linkovani programu s knihovnou libdl.so.1 (interbase 4.0)
Míla Kuchta
mila.kuchta na atlas.cz
Úterý Leden 18 15:41:25 CET 2000
horak na sit.plzen-city.cz (Horak Daniel) wrote:
>> #cc zkouska.o -o zkouska -lgdslib -ldl
>>
>> /usr/bin/ld: warning: libdl.so.1, needed by /usr/lib/libgdslib.so, may
>> conflict with libdl.so.2 /usr/lib/libgdslib.so: undefined
>> reference to `_xstat'
>> /usr/lib/libgdslib.so: undefined reference to `__setjmp'
>> /usr/lib/libgdslib.so: undefined reference to `crypt'
>> /usr/lib/libgdslib.so: undefined reference to `_fxstat'
>> collect2: ld returned 1 exit status
>>
>> Nevi nekdo co s tim?
>
>je treba linkovat s libcrypt (pro funkci crypt) a libNoVersion-2.x.y (pro
>xstat a fxstat), tedy pridat
> "-lcrypt -lNoVersion-2.1.2" (funguje na mem RH6.1) - chvili mne trvalo, nez
>jsem prisel na to linkovani s libNoVersion ;-)
>
> Dan
>
Mam jednodudy programek zkouska vyuzivajici embedded SQL. Na RH 6.1 cz s
interbase 4.0 ho prelozim s parametry:
gpre -z -m -n zkouska.e -- O.K. -> zkouska.c
cc -w -c zkouska.c -- O.K. -> zkouska.o
cc zkouska.o -o zkouska -lgdslib -ldl -lcrypt -lNoVersion-2.1.2
a vyhodi to toto:
/usr/bin/ld: warning: libdl.so.1, needed by /usr/lib/libgdslib.so, may conflict
with libdl.so.2
kdyz to slinkuji s:
cc zkouska.o -o zkouska -lgds -ldl -lcrypt -lNoVersion-2.1.2
tak to projede, ale program po spusteni vycoruje.
Souboru odb.gdb obsahuje jen jednu tabulku (tabulka), ktera je vytvorena ve
visualnim nastroji od Inprise ve Windows.
#include <stdio.h>
#include "/usr/interbase/include/ibase.h"
EXEC SQL
SET DATABASE databaze = "odb.gdb";
void main (void)
{
char first, last;
int age;
EXEC SQL
CONNECT "databaze";
EXEC SQL
SELECT jmeno, prijmeni, vek
INTO :first, :last, :age
FROM tabulka;
printf("Jmeno, Vek: %s %s, %s\n", first, last, age);
EXEC SQL
DISCONNECT databaze;
}
Další informace o konferenci Linux