如何在 linux 中手动安装共享库和包含文件?

How to install shared library and include files manually in linux?

我正在尝试从源代码构建和安装 TBB 库,以便它可以用于 OpenCV 以利用我 raspberry pi 上的多个内核。

我能够使用这些步骤从源代码构建 TBB,没有任何问题。 (来源:How do I build OpenCV with TBB on Raspberry Pi?

wget -O ~/tbb43_20150316oss_src.tgz --no-check-certificate https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb43_20150316oss_src.tgz tar-xvzftbb43_20150316oss_src.tgz CD tbb43_20150316oss 使 tbb CXXFLAGS="-DTBB_USE_GCC_BUILTINS=1 -D__TBB_64BIT_ATOMICS=0"

但是,在 cmake 构建 OpenCV 的步骤中,它没有被检测到。

在哪里将生成的 .so 文件和 .h 文件添加到系统路径以便 cmake 可以检测到它?

谢谢。

运行 'make install' 在 运行 之后的 TBB 源目录中 make 它应该将文件安装到正确的位置。

您可以使用 CMAKE_INCLUDE_PATHCMAKE_LIBRARY_PATH 环境变量来帮助 CMake 找到您定制的 TBB,方法是在您的 cmake 命令前加上前缀,如下所示:

CMAKE_INCLUDE_PATH=~/tbb43_20150611oss/include/ \
  CMAKE_LIBRARY_PATH=~/tbb43_20150611oss/build/*_release/ \
  cmake -DWITH_TBB=ON -DCMAKE_BUILD_TYPE=RELEASE \
    -DCMAKE_INSTALL_PREFIX=/usr/local \
    -DBUILD_NEW_PYTHON_SUPPORT=ON \
    -DINSTALL_C_EXAMPLES=ON \
    -DINSTALL_PYTHON_EXAMPLES=ON \
    -DBUILD_EXAMPLES=ON ..

作为解决方法,我创建了 tbb.pc 文件到 /usr/lib/pkgconfig/。

这是该文件的示例。 https://github.com/openembedded/meta-oe/blob/master/meta-oe/recipes-support/tbb/tbb/tbb.pc

根据您自己的 tbb 路径更改前缀、libdir 和 include dir 路径,您就可以开始了。希望对你有帮助。