Forrásból telepítésnél a külső lib-ek bele fordulnak?

Fórumok

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

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

"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.

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.

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.

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.