boost编译

记boost在gcc的一个库链接问题generic_category()

假如想象 提交于 2019-12-01 12:49:52
报错大致如下: main.cpp:(.text+0x49): undefined reference to `boost::system::generic_category()' main.cpp:(.text+0x53): undefined reference to `boost::system::generic_category()' main.cpp:(.text+0x5d): undefined reference to `boost::system::system_category()' 当时搞了很久,各种库各种一通链接,始终没解决问题 解决方案: "boost/filesystem.hpp" 这个文件依赖于boost_system,编译的时候,需要 -lboost_system选项,但是你的编译选项里头已经指定该选项,为什么还会出现链接错误呢。我也纳闷了半天,后来发现,原来是-l选项的顺序问题。在g++的man帮助信息里面,我发现了下面的话: 读完这段话,应该就明白出错原因了。所以,解决方案就是用下面的命令来编译: 引用 g++ main.cpp -lboost_system -lboost_filesystem ———————————————— 版权声明:本文为CSDN博主「葭五」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

IOS上编译boost库

心已入冬 提交于 2019-12-01 07:58:05
环境: xcode9 mac os 10.13 1、下载boost库并解压 2、cd到解压后的文件包内,执行 sh bootstrap.sh (解压后会得到这个脚本文件)。 3、执行 ./b2 编译整个库。 4、经过一段时间编译后,得到编译后的头文件和库文件。 5、运行 sudo ./b2 install 命令 将编译后的库安装到系统默认路径/usr/local/include下 6、这时候得到的库文件可能只是X86_64此类模拟器架构运行的库,如果需要真机库需要在第3步之后按照实际情况运行以下脚本。 sh myBuildBoost.sh 7、运行后会编译出需要架构的库文件,直接将编译完成之后的库文件复制到系统目录下即可。 8、xcode调试,依次在 header Search path 和 library search path 后添加头文件和库文件路径 /usr/local/include /usr/local/lib 9、在build phases ->link binaru with libray中添加需要的库文件。 10、在实际真机运行中可能会要求关闭bitcode,关闭即可运行。 myBuildBoost.sh #!/bin/sh # myBuildBoost.sh # TestMaster # # Created by LuoYao on 2017/10/20. #

boost静态链接库和c++/clr不兼容问题:未能加载文件或程序集,不是有效的Win32应用程序。

萝らか妹 提交于 2019-12-01 06:45:47
转自:http://blog.csdn.net/h807892124/article/details/51326552 项目上遇到的问题:c++编写的类使用托管c++包装成dll提供给c#项目使用。c++需要使用boost,clr,项目目标平台都是win32/x86。开发环境win10 x64系统,vs2013,.Net Framework 4.0,boost 1.55。 【问题表现】c#程序在win10 x86/x64正常运行,但在win7 x86/x64运行时发生异常: Additional information: Could not load file or assembly “LicenseClientDLL_D.dll” or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT:0x800700C1) 【原因】boost库默认使用静态链接方式,但boost静态链接库和C++/clr不兼容,所以要换成动态链接。 stackoverflow上相关资料: [引用] Too many comments in the net saying boost static libs and CLR are not compatible. [引用] It was the

mac上编译caffe及常见问题

♀尐吖头ヾ 提交于 2019-12-01 06:18:34
Could NOT find Boost 问题描述 基于cmake构建,使用python2.7,已经brew install过boost和boost-python boost的包能找到,但是build python相关的构建规则中,boost python包找不到,提示“Could NOT find Boost”。 需要编辑 cmake/Dependencies.cmake ,修改: find_package(Boost 1.46 COMPONENTS python) if(PYTHONLIBS_FOUND AND NUMPY_FOUND AND Boost_PYTHON_FOUND) 为: find_package(Boost 1.46 COMPONENTS python27) if(PYTHONLIBS_FOUND AND NUMPY_FOUND AND Boost_PYTHON27_FOUND) (增加了 27 ) Python3: 我用的anaconda,装的是python 3.7.1。需要: brew install boost-python3 我安装的是boost 1.71版本,据说比1.70新的boost,找python的时候需要传入 -D Boost_NO_BOOST_CMAKE=ON ,或者在 cmake/Dependencies.cmake 中根据版本自行设定。

基于Anaconda编译caffe+pycaffe+matcaffe in Ubuntu[不用sudo权限]

一笑奈何 提交于 2019-11-30 13:38:29
目录 caffe 编译 环境 github下载caffe源码 依赖 修改源码的编译配置 报错 测试使用 pycaffe caffe matcaffe caffe 编译 环境 Ubuntu16.04 CUDA10 cuDNN gcc 5.4 g++ 5.4 大前提!! 在服务器上面装,但是没有sudo权限,所以依赖的包都只能装在自己用户下的conda环境里 按理来说这个要求应该不少吧。。但是搜出来一大堆博客都是要sudo权限,动不动就卸载、升级。。做不到啊。。只能各种在conda里删删减减。。真的好艰难!! github下载caffe源码 BVLC/caffe 依赖 anaconda3 装好之后,新建环境,最好用python2.7。下面都是装在这个新建的conda环境里,所以要注意先进入该环境! 在caffe/python目录下 pip install -r requirements.txt #requirements.txt 在conda的环境中装必要的包 我装的版本 python2 , opencv3 版本一致很重要! conda install boost conda install glog conda install gflags conda install libprotobuf conda install hdf5=1.8.16 #[!重要] conda install

windows下mingw编译boost

浪子不回头ぞ 提交于 2019-11-30 05:41:03
Mingw编译Boost库 一、Boost Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一。其官方网站为 http://www.boost.org/ ,目前最新版本为1.49.0,以下以此版本为准。 Boost库大部分的子库都是C++模版提供,大部分情况下直接包含头文件就可以了。其中部分子库需要编译,如下图所示: 上图中bjam.exe是boost提供的编译工具,下面会介绍如何获得。 Windows下面使用Boost,可以下载编译好的二进制安装包,下载网址是: http://www.boostpro.com ,不过目前上面提供1.44版的安装包下载,而且使用VC编译的。本文介绍如何使用Mingw编译Boost。 二、Mingw: Minimalist GNU for Windows 官方网站: http://www.mingw.org/ 部分同学可能和我一样,使用自带Mingw环境的IDE,比如Code::Blocks,其官方网站: http://www.codeblocks.org/ 。请确保Mingw工具链目录添加到系统的环境变量PATH中,比如我路径为:"D:\Program Files\CodeBlocks\MinGW\bin",并将这个目录下的mingw32-make.exe复制并重命名为make.exe

stlport的安装 和 boost环境配置

余生长醉 提交于 2019-11-30 05:40:51
今天配置好boost,开始boost之旅! 一、 stlport的安装。 二、安装和使用boost。 参考链接1:安装boost http://blog.sina.com.cn/s/blog_6e0693f70100txlg.html 参考链接2:注意事项 http://www.360doc.com/content/12/0328/17/9369336_198669298.shtml 3. 用记事本打开E:\Boost\tools\build\v2下的user-config.jam: 将 "# using msvc : 9.0 ;" 前的 # 注释符号去掉,表示安装Boost1.4.5时使用Visual Studio 2008 (即msvc : 9.0)。 (通过该文件 user-config.jam,可以配置很多环境,如 GCC, STLPort, QT ) 总结步骤: 1、通过vs工具栏tool,进入visual studio command prompt。 2、到boost安装根目录,运行bootstrap.bat文件, 生成bjam.exe文件 (用于编译生成obj文件)。 3、运行bjam.exe文件,命令如: (全部编译) bjam --without-mpi --toolset=msvc-9.0 --build-type=complete --stagedir="E:

Python中如何调用C++写的扩展模块

℡╲_俬逩灬. 提交于 2019-11-30 05:40:38
Python中如何调用C++写的扩展模块 来自: http://www.itivy.com/python/archive/2012/2/13/python-call-cpp-module.html Python可以调用C++写的扩展模块,具体调用的方法如下: 1.去http://www.boost.org/下载boost包,我用的是boost_1_48_0.zip 2.解压,进入目录找到bootstrap.bat 脚本,并执行,会在相同文件夹生成 bjam.exe文件 3.打开VS2005 在tools->...command prompt,定位到boost主目录下,执行bjam --with-python --build-type=complete stage 编译成功后会在 ...\boost_1_48_0\stage\lib 下找到python所使用的boost库包括.lib 和 .dll 4.在vs2005中新建一个空的动态链接库工程,设置工程的属性,把boost的库路径 ...\boost_1_48_0\stage\lib python库路径 ...\Python27\libs (python安装目录)加上;把头文件路径 ...\Python27\include 和 ...\boost_1_48_0 加上 5.新建hello.cpp文件,把下面代码拷进去 1 2 3 4

(转)VC2010编译boost

丶灬走出姿态 提交于 2019-11-30 05:40:17
BOOST已经开始支持VC2010,也有人称之为VC10或者MSC16。在这里谷主介绍下BOOST的编译过程,BOOST跨平台做的很棒,所以我们编译起来其实很简单。 1、下载BOOST发行版或SVN代码 2、解压缩并执行 bootstrap.bat ,生成编译工具bjam。 3、配置合适的BJAM参数编译 : 3-1、启用多线程、正则式支持UNICODE和MPI,并丢弃PYTHON支持,进行完整(保护静态库和动态库)编译BOOST可以用下列参数: bjam threading=multi -sHAVE_ICU=1 --without-python --toolset=msvc-10.0 --build-type=complete 3-2、同上,只需要动态库: bjam threading=multi -sHAVE_ICU=1 --without-python --toolset=msvc-10.0 link=shared runtime-link=shared debug release 3-3、同3-1,只需要发行版动态库: bjam threading=multi -sHAVE_ICU=1 --without-python --toolset=msvc-10.0 link=shared runtime-link=shared release P.S

boost的编译

和自甴很熟 提交于 2019-11-30 03:22:45
1、下载 https://www.boost.org/users/history/ 2、cd d:\boost\boost_1_61_0 3、bootstrap --prefix="D:\boost\boost_1_61_0" 4、b2 --build-type=complete --toolset=msvc-14.0 --address-model=64 --layout=versioned --prefix="D:\boost\boost_1_61_0" --without-mpi install 来源: https://www.cnblogs.com/lovebay/p/11550949.html