Sziasztok!
Lehet, hogy triviálisat kérdezek, de hosszabb guglizás után sem találok se pro, se kontra választ. (Persze lehet, hogy rosszul kerestem...)
Szóval: Van több, Fortran forrásból fordított végrehajtható állomány, amelyekről annyit tudunk, hogy némelyikük egyetlen forrásállományból fordult, némelyikük pedig többől fordult és linkelődött, de hogy melyik milyen, azt már nem tudjuk. A forrásállományok és az object fájlok is megvannak, de a fordítás sajnos "kézzel" történt valamikor, most pedig kellene egy jó makefile...
A kérdésem az lenne, hogy a forráskódok böngészése nélkül meg lehet-e valahogyan viszonylag gyorsan állapítani, hogy egy adott végrehajtható állomány melyik object fájlokból állt össze?
- 1217 megtekintés
Hozzászólások
nm-mel rámész a futtathatóra, megnézed, mik vannak benne.
Aztán egyesével a .o-kon is. Ezek után már tudod, mi kell, és az hol van. objdump is működik erre.
- A hozzászóláshoz be kell jelentkezni
Torolve!
(felreertettem es az ldd-t irtam)
- A hozzászóláshoz be kell jelentkezni
Szerintem nem kell tudni, hogy melyik program pontosan melyik modulokat linkeli be. Elég tudni, hogy mik a főprogramok. Az összes többi (nem main) forrásból csinálsz egy statikus libet, amit hozzálinkelsz a főprogramok objectjéhez. A linker tudni fogja, hogy mihez mi kell neki. Legalábbis, amíg nincs névütközés.
--
ulysses.co.hu
Nem pont ide akartam, de mindegy.
- A hozzászóláshoz be kell jelentkezni