如何将构建的C++库安装到 /usr/include?

How do I install a built C++ library to /usr/include?

本文关键字:usr include 安装 构建 C++      更新时间:2023-10-16

>Goal

我想在 Ubuntu 16.04 上安装最新的 C++ Pointcloud 库:PCL 版本 1.8,并以我可以将其导入C++代码的方式安装它,如下所示:

#include <pcl/filters>

进展

我遵循了教程:https://gist.github.com/IgniparousTempest/ce5fadbe742526d10d6bdbf15c3a3fe7#file-ubuntu_16-06_pcl_1-8-0_install-sh

命令成功运行,库(.cpp 和 .h 文件(当前位于:~/Documents/pcl

接下来我应该怎么做?

我现在需要如何处理这个库?

我对安装像这样的库C++ Linux 相当陌生,特别是使用 cmake 和 make 命令。

我之前使用终端命令安装了 pcl 1.7sudo apt-get install libpcl-all.这会将头文件放在/usr/include/pcl-1.7/中。相应的.cpp文件去哪儿了?我无法使用 bash 命令找到它们$ locate generic_pcl_filename.cpp

我也想知道我是否应该将 pcl 1.8 文件夹放在/usr/include目录中,但这似乎是错误的,因为该文件夹还包含.cpp文件。

任何这方面的建议和信息将不胜感激。

如何将构建的C++库安装到/usr/include?

通常,通过使用包管理器。包管理器所做的只是复制该目录下的头文件。除此之外,它还跟踪哪些文件属于哪个已安装的软件包。

如果要在包管理器的上下文之外安装库,则应改用/usr/local/include,因为/usr/include 通常保留给包管理器。复制可以通过cp完成,尽管库通常附带一个具有系统约定知识的构建系统,并且安装可以像make install一样简单。库应记录应如何安装它。

我以前安装了...使用终端命令 sudo apt-get install ...这会将头文件放在/usr/include/pcl-1.7/中。相应的.cpp文件去哪儿了?

创建 apt 包的维护者编译了 cpp 文件。包不包含源,而是包含已编译的库(无论是存档的对象文件还是可动态加载的共享库(。