我有一个小问题。我创建了一个程序,我可以使用以下命令安装:
./configure && make && sudo make install
这很好用,但所有.hpp文件都在/usr/local/include
。是否可以将此.hpp文件移至/usr/local/include/<target>
?
所以如果我有一个名为my_program的程序,让我们说一个名为Timer.hpp
的头文件,是否可以将Timer.hpp
移到/usr/local/include/my_program
?
我想通过automake和autoconf来做到这一点。如果你看一下/usr/include
,你会发现其他程序也有一些目录。我想要那个,但当然是/usr/local/include
。
我也知道./configure --prefix=/path/my_program
然后,/path/my_program
中有所有内容,但我不希望这样。我想在/usr/local/include
中找到一个带有我的程序名的目录,在该目录中我想要我程序中的所有hpp文件。
怎么做?
答案 0 :(得分:4)
如果您正在使用Automake,那么现在您可能有一个类似的行:
include_HEADERS = ...
解决此问题的最简单方法是使用预定义的pkgincludedir
:
pkginclude_HEADERS = ...
这将使用您的包的名称作为子目录的名称。
或者,您可以引入自己的目录变量,如:
myincludedir = $(includedir)/whatever
myinclude_HEADERS = ...