C 使用openssl库交叉编译时出现未定义的引用错误

C 使用openssl库交叉编译时出现未定义的引用错误,c,linux,openssl,C,Linux,Openssl,目标是运行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,那

目标是运行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'

我做错了什么?

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

终止时没有错误