sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #102561
SV: Problemer med lænkning
>________________________________
> Fra: Robert Larsen <robert@xxxxxxxxxxxxxxxxx>
>
>Jeg prøver at compile noget kode, som benytter SHA256 funktionerne fra
>openssl/sha.h, men jeg kan sgi ikke få det til at lænke:
>
>$ make
>cc `pkg-config --libs --cflags libssl` -o hash hash.c
>/tmp/ccZoqZAW.o: In function `check_hash':
>hash.c:(.text+0x31): undefined reference to `SHA256_Init'
>hash.c:(.text+0x4f): undefined reference to `SHA256_Update'
>hash.c:(.text+0x65): undefined reference to `SHA256_Final'
>collect2: error: ld returned 1 exit status
>make: *** [hash] Error 1
>
>[...]
>
>...og hvis jeg lister dens symboler, så ligger funktionerne der:
>$ objdump -T
>/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu/libcrypto.so|grep
>SHA256
>0000000000068640 g DF .text 000000000000000a OPENSSL_1.0.0
>SHA256_Transform
>0000000000068330 g DF .text 00000000000000e2 OPENSSL_1.0.0
>SHA256_Init
>0000000000068420 g DF .text 000000000000020f OPENSSL_1.0.0
>SHA256_Update
>0000000000068830 g DF .text 0000000000000078 OPENSSL_1.0.0 SHA256
>0000000000068650 g DF .text 00000000000001c7 OPENSSL_1.0.0
>SHA256_Final
>
>Ved nogen, hvad jeg gør galt?
>
>
Hej Robert,
Nu ved jeg ikke hvordan hash.c ser ud så det er bare et par skud i tågen herfra.
Hvis du vil bruge .so filen lyder det til at du vil linke dynamisk. Plejer man så ikke at skulle have "-ldl" med i cc kommandoen - og måske også "-rdynamic" ?
Eller mangler du at installere -dev pakken ? Hos mig er "libcrypto.a" i "libssl-dev" pakken.
Mvh
-- Jan
References