我有兴趣知道当我安装类似的东西时opencv
,它只是复制某些文件夹/目录中的一些文件/文件夹,例如usr/local/include
或usr/local/lib
?或者也许会发生一些额外的事情,它会更改我的计算机中某些文件的内容作为配置?
另外,我想知道,如果我想更改 的函数opencv
,我是否应该找到定义该函数的文件(相关.cpp
文件)然后修改该函数?不需要再次编译或手动更改某些配置等额外步骤吗?
答案1
从发行版安装软件包通常只不过是将文件复制到特定位置并更新软件包管理器的数据库,尽管某些软件包可能附加了挂钩(在安装前或安装后运行的脚本)。
.h
对于库,这通常是典型包含目录中的文件集合,和.so
/或.a
库目录中的文件。这些库是编译运行的输出,大多数情况下不包括源文件( .c
、等)。.cpp
如果您想更改库(或任何已编译的可执行代码),您需要获取这些源代码,修改它们以满足您的需要,然后重新编译。如果您以适合您的发行版的方式重新打包输出,则可以使用包管理器安装更改。