不能用boost编译



尝试创建一个简单的WebSocket c++应用程序,我使用的库依赖于boost。我试图添加boost到我的项目,但它拒绝编译,这里是我的cpp文件

#include <websocketpp/config/asio_no_tls_client.hpp>
#include <websocketpp/client.hpp>
#include <websocketpp/common/thread.hpp>
#include <websocketpp/common/memory.hpp>
#include <cstdlib>
#include <iostream>
#include <map>
#include <string>
#include <sstream>
main()
{
    printf("Hello Worldn");
    return 0;
}

我试图用g++ -I. -Iboost_1_58_0 /home/cabox/workspace/main.cpp -o /home/cabox/workspace/bin/exe编译它,但所有我得到的是

In function `__static_initialization_and_destruction_0(int,int)':                                                            
main.cpp:(.text+0xfba): undefined reference to`boost::system::generic_category()'

我的文件夹布局就是我的Main.cpp文件,boost_1_58_0 &websocketpp文件夹都在同一个父目录下,我做错了什么?

添加

-lboost_system

(参见什么是未定义的引用/未解析的外部符号错误以及如何修复它?)

可选地使用-L

指定库目录

确保它在cps

之后

对boost::system::generic_category的未定义引用,尽管与boostrongystem有链接

最新更新