我正在使用
编译我的代码gcc -o ./sample/createUsageXMLd ./obj/createUsageXML.o -L../../../third_party/lib/openssl-fips/2.0/LSBGCC64 -L../../../third_party/lib/curl/7.45.0/LSBGCC64 -lssl -lcrypto
但我得到错误 /
usr/bin/ld: warning: libssl.so.1.0.0, needed by ../../../third_party/lib/curl/7.45.0/LSBGCC64/libcurl.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libcrypto.so.1.0.0, needed by ../../../third_party/lib/curl/7.45.0/LSBGCC64/libcurl.so, not found (try using -rpath or -rpath-link)
../../../third_party/lib/curl/7.45.0/LSBGCC64/libcurl.so: undefined reference to `SSL_CTX_set_srp_username'
../../../third_party/lib/curl/7.45.0/LSBGCC64/libcurl.so: undefined reference to `SSL_CTX_set_srp_password'
collect2: error: ld returned 1 exit status
我有以下内容 图书馆第三方文件夹
$ cd third_party/lib/openssl-fips/2.0/LSBGCC64/
$ ls
libcrypto.a libcrypto.so libcrypto.so.1.0.0 libssl.a libssl.so libssl.so.1.0.0
答案 0 :(得分:0)
您还需要提供要链接的库的名称,
gcc file.c -o file -L/path/to/libs -llibname
在您的情况下,尝试在包含库的路径(使用-L完成)之后提供-lssl。请注意,前缀“lib”和后缀“.so”不是必需的。
答案 1 :(得分:0)
我尝试使用yum install安装curl。我检查了已安装curl的版本。它是7.29.0。我的编辑很成功。后来我在third_party文件夹中将curl的版本从7.45.0降级到7.29.0。现在它编译好了