1

目标是运行 debian 的 beaglebone black

主机是运行 Ubuntu 13.04 的 PC

我有在目标上编译好的代码。

gcc main.c -lssl

在主机上,我使用的是 linaro gcc 编译器。

CC=gcc-linaro-arm-linux-gnueabihf-4.8-2013.07-1_linux/bin/arm-linux-gnueabihf-gcc

如果我将 /usr/lib/arm-linux-gnueabihf/libssl.so 从目标复制到主机上的 myLibs,然后尝试

 $CC main.c -L /myLibs/ -lssl

我得到:

main.c:(.text+0x54): undefined reference to `SHA256_Init'

main.c:(.text+0x96): undefined reference to `SHA256_Update'

main.c:(.text+0xc8): undefined reference to `SHA256_Final'

libssl.so: undefined reference to `BIO_pop@OPENSSL_1.0.0'

我究竟做错了什么?

4

1 回答 1

0

我将 libcrypto.so 和 libz.so 从目标复制到主机。现在 $CC main.c -L /myLibs/ -lssl -lcrypto -lz

没有错误地终止。

于 2013-10-09T14:51:52.633 回答