Sziasztok!
Egy egyszerű kérdésem lenne ami már elég régóta homályos:
Ha lefordítok egy programot amihez kell pl az openssl library, akkor hogyan tudom megadni azt a ./configure-nek hogy ezt a libet belefordítsa majd a make vagy külső hivatkozásként érje el?
Gondolom az a preferált, hogy ne forgassa bele, csak hivatkozzon rá. De ezt hogy lehet megadni neki?
köszi
- 841 megtekintés
Hozzászólások
Próbáld először feltenni a libssl-dev csomagot, majd próbáld újra futtatni a ./configure-t.
Hátha megeszi. Ha igen, akkor jó eséllyel nem lesz gond a make-kel sem.
Fuszenecker Róbert
- A hozzászóláshoz be kell jelentkezni
"belefordítsa" = statikus linkelés. és konkrétumok nélkül nem lehet rá konkrét választ adni, programfüggő, hogy mit lehet megadni a configure-nak.
de egyébként már nem divat statikusan linkelni, lásd:
http://www.akkadia.org/drepper/no_static_linking.html
inkább használd a shared libet.
szerintem.
- A hozzászóláshoz be kell jelentkezni
Köszi a linket hasznos anyag :)
Akkor ha jól sejtem az alapértelmezett állapot az a dinamikus linkelés.
A másik kérdésem pont a shared lib. Ez pontosan mi is? Ha ezt megadom a configure-nek akkor úgy lesz lefordítva a program, hogy más programok hivatkozhatnak rá libraryként?
--enable-shared: This option enables building the shared library.
Konkrétan az expect fordításánál találkoztam most ezzel.
- A hozzászóláshoz be kell jelentkezni
hát ahogy nézem, ez inkább egy tool (ráadásul tcl-ben) mint lib, szóval itt nem tudom, mit akarnál libként használni. milyen másik program "hivatkozna" még erre?
szerk: mondjuk én ilyet találtam az expect configure-ban:
--enable-shared build and link with shared libraries (default: on)
ez már értelmesebben hangzik. ezt letiltod (--disable-shared gondolom), és *elvileg* statikusan linkeli magát. de ki kell próbálni, csak tipp.
szerintem.
- A hozzászóláshoz be kell jelentkezni
Ahaaa, világos :)
Tehát az alapértelmezett az az enable-shared amivel dinamikusan linkeli majd be a libeket (tcl-t).
Ha letiltanám a shared buildet akkor lenne a statikus linkelés, tehát belefordítaná az expect-be a tcl-t és így nem lenne dependency és hordozhatóvá válna az expect (elvileg).
Köszönöm a választ, kicsit félreértettem az --enable-shared opciót. Amúgy nem akarok én semmit statikusan linkelni, tisztában vagyok vele, hogy nem szép dolog. Csak tisztázni akartam ezeket.
- A hozzászóláshoz be kell jelentkezni
valami ilyesmi. de változó, mert pl. egy libnél az --enable-shared általában azt csinálja, amit fentebb bemásoltál, azaz hogy létrehoz-e shared libet.
szerintem.
- A hozzászóláshoz be kell jelentkezni