在vm debian虚拟机上编译boost

本文介绍了一个详细的Boost库编译流程,包括下载Boost源码、运行bootstrap脚本、使用b2进行编译等步骤。特别强调了虚拟机内存配置的重要性,并给出了针对内存不足问题的解决方法。同时,还提供了一些减少编译负担的小技巧,例如通过排除不使用的组件来加速编译过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、基本过程都一样:

    下载boost --> 运行./bootstrap.sh --> 运行./b2 --buildtype=complete install

2、特殊地方:

            vm的内存不能太小:我设置为2g,4g都出现失败,最后设置8G才编译成功。

            提示的错误形如: ...failed gcc.compile.c++ bin.v2/libs/python/build/gcc-6.3.0/release/link-st(搜索tag);这之前有提示内存不足等错误

       b2编译时,可以去除一部分不需要的库,比如wave, graph等,使用./b2 --without-wave --without-graph --buildtype=complete install

            

<think>好的,我现在需要帮助用户在VMware的Debian虚拟机上通过源码编译安装OpenCV。首先,我得回顾一下用户提供的引用内容,看看有没有有用的信息。 用户提到的引用[2]和[3]都涉及在虚拟机中安装OpenCV的经验,特别是引用[3]提到了Ubuntu下的环境配置,可能对Debian也有参考价值。引用[4]提到了安装后的检测方法,这个步骤很重要,需要包括在回答中。另外,用户提到需要源码编译安装,所以需要指导用户下载源码、安装依赖、配置、编译和安装。 首先,我需要确定步骤的正确性。编译OpenCV通常需要安装很多依赖库,比如CMake、GCC、Python开发包等。用户可能不清楚这些依赖,所以必须详细列出。然后,下载源码部分,用户可能需要使用wget或者git来获取源码,这里引用[2]用了wget下载旧版本,但用户可能需要最新版本,所以建议使用git clone或者官网下载链接。 接下来是配置步骤,使用CMake生成Makefile。这里需要指定安装路径,可能默认是/usr/local,但用户如果有特殊需求可能需要调整。然后编译和安装,注意使用make -j4或者更多线程以加快编译速度,但虚拟机资源有限,可能需要根据实际情况调整。 安装完成后,配置环境变量,引用[3]提到编辑/etc/ld.so.conf.d/opencv.conf并添加库路径,然后运行ldconfig。这部分需要包括进去,确保系统能找到OpenCV的库。同时,Python绑定可能需要设置PYTHONPATH,但如果是通过源码编译且正确安装了Python依赖,可能不需要额外步骤,但最好检查一下。 最后,验证安装,如引用[4]所述,运行Python导入cv2并打印版本号。此外,还可以编译一个C++示例程序来测试,确保所有模块正常工作。 用户可能遇到的常见问题包括依赖项缺失导致编译错误,这时候需要确保所有依赖都正确安装。另外,虚拟机资源不足可能导致编译过程缓慢或失败,建议分配足够的内存和处理器核心。还有,CMake配置时如果找不到某些库,可能需要手动指定路径或安装对应的开发包。 需要提醒用户注意版本兼容性,比如选择与项目匹配的OpenCV版本,以及对应的contrib模块是否需要。如果用户需要特定版本,应该替换git checkout的命令到相应标签。 总之,步骤需要详细但清晰,避免遗漏关键步骤,同时参考用户提供的引用内容中的有用信息,确保回答准确可靠。</think>### 在 VMware Debian 虚拟机中从源码编译安装 OpenCV 的步骤 #### 1. 安装系统依赖 ```bash sudo apt update && sudo apt upgrade -y sudo apt install -y build-essential cmake git pkg-config libgtk-3-dev \ libavcodec-dev libavformat-dev libswscale-dev libv4l-dev \ libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev \ gfortran openexr libatlas-base-dev python3-dev python3-numpy \ libtbb2 libtbb-dev libdc1394-22-dev ``` 这些依赖包含编译工具、多媒体库、Python支持等,确保后续编译顺利进行[^3]。 --- #### 2. 获取 OpenCV 源码 ```bash # 下载主仓库 git clone https://github.com/opencv/opencv.git cd opencv git checkout <指定版本标签,如4.5.2> # 下载扩展模块(可选) git clone https://github.com/opencv/opencv_contrib.git cd opencv_contrib git checkout <与主仓库相同的版本标签> ``` 若需特定版本(如4.5.2),需通过`git checkout`切换标签[^1]。 --- #### 3. 配置编译参数 ```bash cd opencv mkdir build && cd build cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \ -D WITH_TBB=ON \ -D WITH_OPENGL=ON \ -D BUILD_EXAMPLES=ON .. ``` - `CMAKE_INSTALL_PREFIX`指定安装路径(需与后续环境配置一致) - 包含`opencv_contrib`模块需指定路径[^3] --- #### 4. 编译与安装 ```bash make -j$(nproc) # 根据虚拟机CPU核心数调整并行编译数量 sudo make install sudo ldconfig # 更新动态链接库缓存 ``` 编译时间较长(约1-2小时),虚拟机建议分配至少4GB内存和4核CPU[^2]。 --- #### 5. 验证安装 **Python 测试:** ```bash python3 -c "import cv2; print(cv2.__version__)" ``` 应输出类似`4.5.2`的版本号[^4]。 **C++ 测试:** ```bash # 创建测试文件 test_opencv.cpp g++ test_opencv.cpp -o test `pkg-config --cflags --libs opencv4` ./test ``` --- #### 常见问题解决 - **依赖缺失**:根据CMake报错信息安装缺失的包(如`libjasper-dev`) - **虚拟机性能不足**:关闭其他程序,减少`make -j`参数值 - **路径错误**:确保`/usr/local/lib`在`/etc/ld.so.conf.d/opencv.conf`中[^3] --- 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值