Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 建筑推进1(u 55)u 0' ;;s示例异步TCP日间服务器_C++_Sockets_Boost_Tcp - Fatal编程技术网

C++ 建筑推进1(u 55)u 0' ;;s示例异步TCP日间服务器

C++ 建筑推进1(u 55)u 0' ;;s示例异步TCP日间服务器,c++,sockets,boost,tcp,C++,Sockets,Boost,Tcp,我正在尝试构建Boost的异步TCP日间服务器示例,该服务器位于以下链接中: 下面是我试图构建示例的内容: g++ -o server server.cpp -I ~/boost/include -L~/boost/lib -lboost_system 以下是我得到的错误: g++ -o server server.cpp -I ~/boost/include -L~/boost/lib -lboost_system /tmp/ccF38gvh.o: In function `__stat

我正在尝试构建Boost的异步TCP日间服务器示例,该服务器位于以下链接中:

下面是我试图构建示例的内容:

g++ -o server server.cpp -I ~/boost/include -L~/boost/lib -lboost_system
以下是我得到的错误:

 g++ -o server server.cpp -I ~/boost/include -L~/boost/lib -lboost_system
/tmp/ccF38gvh.o: In function `__static_initialization_and_destruction_0(int, int)':
server.cpp:(.text+0x221): undefined reference to `boost::system::generic_category()'
server.cpp:(.text+0x22d): undefined reference to `boost::system::generic_category()'
server.cpp:(.text+0x239): undefined reference to `boost::system::system_category()'
/tmp/ccF38gvh.o: In function `boost::system::error_code::error_code()':
server.cpp:(.text._ZN5boost6system10error_codeC2Ev[_ZN5boost6system10error_codeC5Ev]+0x17): undefined reference to `boost::system::system_category()'
/tmp/ccF38gvh.o: In function `boost::asio::error::get_system_category()':
server.cpp:(.text._ZN5boost4asio5error19get_system_categoryEv[boost::asio::error::get_system_category()]+0x5): undefined reference to `boost::system::system_category()'
collect2: ld returned 1 exit status
make: *** [all] Error 1

我需要添加什么才能成功构建它?

我很确定您的命令行是不同的

特别是,您是否可以在libs之后列出源代码

具体地

g++ -o server -I "$HOME/boost/include" -L"$HOME/boost/lib" -lboost_system server.cpp 
不起作用,以及

g++ -o server server.cpp -I "$HOME/boost/include" -L"$HOME/boost/lib" -lboost_system
应该有用

除此之外,另请参见。教程的jam文件使用
-lboost\u system-lboost\u thread-DBOOST\u ALL\u NO\u LIB=1构建所有内容(这可能有些过分)


更新也发现了这个

问题是什么?很抱歉,在我完成之前,我不小心按了enter并发送了这个。这是一个浏览器错误,如果“enter”提交帖子:)我移动了“server.cpp”的位置,但它仍然不起作用。我会看看你提供的链接。谢谢,我尝试过使用:g++-o server-I~/boost/include-L~/boost/lib-lboost_系统-lboost_线程-DBOOST_ALL_NO_lib=1 server.cpp,现在我得到了一个不同的错误:/usr/bin/ld:警告:libboost_系统。so.1.53.0,是/usr/local/libboost_线程需要的。因此,可能与libboost_系统冲突。so.5这不是错误。只需确保您的LD_LIBRARY_路径在运行时找到所需的版本即可。您还可以查看
-Wl,rpath
选项。(链接器警告您,您的系统LD_LIBRARY_路径包含同一库的冲突版本),因此我可以使用(-Wl,rpath)选项指定所需的版本?您可以使用它来避免手动重写LD_LIBRARY_路径。当然,将其烘焙到二进制文件中是有一定限制的(特别是当它引用特定于机器的路径时)。只是给你选择