Libraries selektiv statisch einbinden

Post Reply
Message
Author
Zonk1

Libraries selektiv statisch einbinden

#1 Post by Zonk1 »

Hi,

ich habe ein Makefile/gcc-Problem: Ich würde in einem Projekt gerne genau eine Library statisch linken, die anderen, ebenfalls noch verwendeten aber nicht. Momentan sehe ich nur die Möglichkeit entweder alle oder keine statisch zu binden - geht es auch anders?

Zonk!

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

Re: Libraries selektiv statisch einbinden

#2 Post by Janka »

Zonk1 wrote:ich habe ein Makefile/gcc-Problem: Ich würde in einem Projekt gerne genau eine Library statisch linken, die anderen, ebenfalls noch verwendeten aber nicht. Momentan sehe ich nur die Möglichkeit entweder alle oder keine statisch zu binden - geht es auch anders?
Statisch linken heißt, die .a-Version der Library wie eine .o-Datei im abschließenden Linker-Aufruf z.B.

Code: Select all

gcc -o hello libxyz.a hello.o
anzugeben. Bei dynamischem Linken müsste man stattdessen

Code: Select all

gcc -o hello -lxyz hello.o
schreiben.

Der gcc-Schalter "-static" bezieht sich eigentlich auf die Libraries, die beim Linken mit gcc (statt ld) sonst automatisch eingebunden werden, also linux-gate.so, libc.so, ld-linux.so und gegebenenfalls libpthread.so

Janka

Post Reply