Aenderungen in Libraryfiles durchfuehren

25/02/2009 - 16:45 von Martin Kleiner | Report spam
Hi

Ich habe eine fix und fertig compilierte und archivierte Library und
nun moechte ich kleine Aenderungen
in einigen Files der Library durchfuehren. Nachdem ich die
gewuenschten C Sourcefiles angepasst habe, compiliere ich diese und
linke alles mit der Library. Jedoch habe ich die entsprechenden Object
files noch nicht aus der Library entfernt, doch dies scheint dem
Linker egal zu sein. Es schaut so aus als ob er in diesem Fall einfach
die Funtionen welche in der Library definiert sind zu nehmen. Sollte
in diesem Falle nicht eine Fehlermeldung ausgegeben werden welche mir
sagt dass der Linker nicht weiss welches Object File er nun nehmen
soll (das von mir geaenderte oder das orginal aus der Library). Am
Interface selber hab ich nix geaendert!
 

Lesen sie die antworten

#1 Claus Reibenstein
25/02/2009 - 17:18 | Warnen spam
Martin Kleiner schrieb:

Ich habe eine fix und fertig compilierte und archivierte Library und
nun moechte ich kleine Aenderungen
in einigen Files der Library durchfuehren. Nachdem ich die
gewuenschten C Sourcefiles angepasst habe, compiliere ich diese und
linke alles mit der Library. Jedoch habe ich die entsprechenden Object
files noch nicht aus der Library entfernt, doch dies scheint dem
Linker egal zu sein. Es schaut so aus als ob er in diesem Fall einfach
die Funtionen welche in der Library definiert sind zu nehmen. Sollte
in diesem Falle nicht eine Fehlermeldung ausgegeben werden welche mir
sagt dass der Linker nicht weiss welches Object File er nun nehmen
soll (das von mir geaenderte oder das orginal aus der Library). Am
Interface selber hab ich nix geaendert!



Üblicherweise holt sich ein Linker aus einer Library nur das, was ihm
noch fehlt. Bei manchen Linkern ist auch die Reihenfolge wichtig, in der
die Objekte und Libraries übergeben werden. Ob und unter welchen
Umstànden hierbei ein Fehler oder eine Warnung ausgegeben wird, ist
Sache des Linkers. Die Dokumentation zu Deinem Linker sollte genauere
Auskunft geben können.

Mit der Sprache C hat das allerdings nichts zu tun.

Gruß. Claus

Ähnliche fragen