当我安装pcl(Point Cloud Library)时,我已经安装了boost作为第三个库。
现在我正在尝试运行客户端和服务器程序http://www.boost.org/doc/libs/1_57_0/doc/html/boost_asio/example/cpp03/ssl/client.cpp
尝试链接所需的库时:
g++ -I /usr/include/boost/ server.cpp -o server -lboost_system -lssl -lpthread
出现以下错误:
/ usr / bin / ld:/tmp/ccRbD849.o:对符号的未定义引用 'ERR_reason_error_string @@ OPENSSL_1.0.0' //lib/x86_64-linux-gnu/libcrypto.so.1.0.0:错误添加符号:DSO 从命令行中丢失了collect2:错误:ld返回1退出状态
当我搜索 usr 文件夹时,Boost文件夹仅存在于 include 子文件夹中。
我该怎么做才能解决这个问题。
答案 0 :(得分:13)
[...] libcrypto.so:[...]命令行中缺少DSO
拼出来!你错过了
-lcrypto
在链接器命令行上。事实上,我总是串联使用-lssl -lcrypto