草庐IT

ZN5boost

全部标签

c++ - 使用 boost::serialization 大大增加了二进制大小

我在我的应用程序中使用相当复杂的数据结构(主要使用STL容器),并使用Boost(v1.34)将它们序列化。每当我使用调试符号(gcc-g)进行编译时,生成的可执行文件都会变得很大——大约25MB。剥离所有调试符号可将大小减小到约3MB。我试图确定大小增加的原因,似乎序列化方法是原因。特别是,调用序列化的模块的目标文件(代码如“oarchive有没有可能阻止这些符号的产生,或者有选择地去除它们?剥离所有符号不是一种选择,因为我需要为我自己的代码调试符号。 最佳答案 将带有序列化调用的代码放到单独的模块中,将它们编译成大目标文件。对它

c++ - 使用 boost 的 C++ 中的 hello world python 扩展?

这是我第一次尝试使用boost进行python扩展。有人可以帮助我了解导致编译错误的原因吗?#includeusingnamespacestd;voidsay_hello(constchar*name){cout#includeusingnamespaceboost::python;BOOST_PYTHON_MODULE(hello){def("say_hello",say_hello);}user@host:~$g++main.cpp-otest.soInfileincludedfrom/usr/include/boost/python/detail/prefix.hpp:13:0,

c++ - 使用 boost 的 C++ 中的 hello world python 扩展?

这是我第一次尝试使用boost进行python扩展。有人可以帮助我了解导致编译错误的原因吗?#includeusingnamespacestd;voidsay_hello(constchar*name){cout#includeusingnamespaceboost::python;BOOST_PYTHON_MODULE(hello){def("say_hello",say_hello);}user@host:~$g++main.cpp-otest.soInfileincludedfrom/usr/include/boost/python/detail/prefix.hpp:13:0,

c++ - 仅静态链接 boost 库 G++

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:CanImixstaticandshared-objectlibrarieswhenlinking?我想编译我的应用程序,仅静态链接boost_system库。其他(glibc等)应该动态链接。我该怎么做?我的动态编译命令:g++-onewserverserver.cpp...-lboost_system-std=c++0x静态编译命令:g++-static-onewserverserver.cpp...-pthread-lboost_system-std=c++0x但是这个命令静态链接所有!应用重量增加了2m

c++ - 仅静态链接 boost 库 G++

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:CanImixstaticandshared-objectlibrarieswhenlinking?我想编译我的应用程序,仅静态链接boost_system库。其他(glibc等)应该动态链接。我该怎么做?我的动态编译命令:g++-onewserverserver.cpp...-lboost_system-std=c++0x静态编译命令:g++-static-onewserverserver.cpp...-pthread-lboost_system-std=c++0x但是这个命令静态链接所有!应用重量增加了2m

c++ - 在 unix 上 boost UDP 套接字问题 - 绑定(bind) : address already in use

首先,我知道在同一主题上还有其他几个主题,但我无法在其中找到任何可以帮助我的东西,所以我会尝试非常具体地说明我的情况。我已经设置了一个简单的UDP客户端/UDP服务器对,负责在多个并行模拟之间发送数据。也就是说,模拟器的每个实例都在单独的线程中运行,并在UDP套接字上发送数据。在主线程中,服务器正在运行并在模拟之间路由消息。(对于这个问题)服务器代码的重要部分如下所示:UDPServer::UDPServer(boost::asio::io_service&m_io_service):m_socket(m_io_service,udp::endpoint(udp::v4(),PORT_

c++ - 在 unix 上 boost UDP 套接字问题 - 绑定(bind) : address already in use

首先,我知道在同一主题上还有其他几个主题,但我无法在其中找到任何可以帮助我的东西,所以我会尝试非常具体地说明我的情况。我已经设置了一个简单的UDP客户端/UDP服务器对,负责在多个并行模拟之间发送数据。也就是说,模拟器的每个实例都在单独的线程中运行,并在UDP套接字上发送数据。在主线程中,服务器正在运行并在模拟之间路由消息。(对于这个问题)服务器代码的重要部分如下所示:UDPServer::UDPServer(boost::asio::io_service&m_io_service):m_socket(m_io_service,udp::endpoint(udp::v4(),PORT_

c++ - 在 Linux 上使用 CMake 将 boost 链接到共享库

我的项目中有一个可执行文件和一个共享库。共享库使用boost库。可执行文件使用olny共享库。tilenet/根Cmake文件:cmake_minimum_required(VERSION2.6)project(tilenet)set(Boost_USE_STATIC_LIBSOFF)#I'vealreadytriedONset(Boost_USE_MULTITHREADEDON)set(Boost_USE_STATIC_RUNTIMEOFF)find_package(Boost1.49COMPONENTSsystemfilesystemREQUIRED)include_directo

c++ - 在 Linux 上使用 CMake 将 boost 链接到共享库

我的项目中有一个可执行文件和一个共享库。共享库使用boost库。可执行文件使用olny共享库。tilenet/根Cmake文件:cmake_minimum_required(VERSION2.6)project(tilenet)set(Boost_USE_STATIC_LIBSOFF)#I'vealreadytriedONset(Boost_USE_MULTITHREADEDON)set(Boost_USE_STATIC_RUNTIMEOFF)find_package(Boost1.49COMPONENTSsystemfilesystemREQUIRED)include_directo

c++ - Boost::mutex 比没有 mutex 的程序花费的时间更少

我执行了以下程序,其中我创建了100个线程并发执行。请注意这是一个示例程序。我知道下面的程序不需要多线程,但我的目的是测试互斥量。classThreadPool{public:ThreadPool(intnum=10);~ThreadPool();voidAssignPool();voiddoSometask();voidinc();private:boost::asio::io_serviceioService;boost::thread_groupthreadpool;boost::asio::io_service::work*work;volatileintp_size;intp