我的编译过程会出现如下错误
..undefined reference to `BN_cmp'
尽管我包括<openssl/bn.h>
然后运行
gcc -lssl -lcrypto test.c -o test
有人可以帮忙吗?(openssl libssl1.0.0,libssl-dev 已安装)
答案1
解决方案很简单,只需-l
在结尾:
gcc test.c -o test -lssl -lcrypto
顺序很重要,因为ld
Ubuntu 11.04 默认使用-as-needed
开关调用,所以依赖于其他库的文件/库必须在这些其他库之前,即test.c
需要libcrypto
,所以它必须在之前-lcrypto
。
有关详细信息,请参阅For more information, seeNatty Narwhal 中的工具链转换。