[th] glib2-static

Szymon Siwek sls w poczta.wp.pl
Nie, 5 Lis 2006, 16:12:33 CET


Witam!

Próbuję zbudować syslog-ng. Pierwsza przeszkoda - statyczne linkowanie
testowego programu z -lglib-2.0 wywala informację, o braku -lc. Rozumiem,
że glib2-static powinno mieć requires glibc-static?
Następna przeszkoda związana jest z tym, że glib2 >= 2.12.3 używa -lrt

$ cat t.c

#include <glib.h>
int main()
{
        GTimer   *timer = g_timer_new();
        g_timer_start(timer);
        return 0;
}

$ i686-pld-linux-gcc t.c -static -lglib-2.0 \
	`pkg-config --cflags glib-2.0` \
	`pkg-config --libs glib-2.0`


/usr/lib/gcc/i686-pld-linux/4.2.0/../../../libglib-2.0.a(gtimer.o): In function `g_timer_elapsed': (.text+0x210): undefined reference to `clock_gettime'
/usr/lib/gcc/i686-pld-linux/4.2.0/../../../libglib-2.0.a(gtimer.o): In function `g_timer_continue': (.text+0x281): undefined reference to `clock_gettime'
/usr/lib/gcc/i686-pld-linux/4.2.0/../../../libglib-2.0.a(gtimer.o): In function `g_timer_reset': (.text+0x311): undefined reference to `clock_gettime'
/usr/lib/gcc/i686-pld-linux/4.2.0/../../../libglib-2.0.a(gtimer.o): In function `g_timer_stop': (.text+0x356): undefined reference to `clock_gettime'
/usr/lib/gcc/i686-pld-linux/4.2.0/../../../libglib-2.0.a(gtimer.o): In function `g_timer_start': (.text+0x398): undefined reference to `clock_gettime'
/usr/lib/gcc/i686-pld-linux/4.2.0/../../../libglib-2.0.a(gtimer.o):(.text+0x43f): more undefined references to `clock_gettime' follow
collect2: ld returned 1 exit status

Czy glib-static jest poprawnie zlinkowane, tzn. czy nie powinienem dostać
eleganckiego komunikatu typu "-lrt not found".
Kolejne pytanie - czy pkg-config nie pownien zwracać jakiejś informacji o
owym -lrt?

-- 
Szymon Siwek
Los nikomu nie szczędzi rozczarowań.


Więcej informacji o liście dyskusyjnej pld-devel-pl