将所有头文件移动到/ usr / local / include / <target> /

时间:2015-08-21 19:43:38

标签: autotools autoconf automake

我有一个小问题。我创建了一个程序,我可以使用以下命令安装:

./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文件。

怎么做?

1 个答案:

答案 0 :(得分:4)

如果您正在使用Automake,那么现在您可能有一个类似的行:

include_HEADERS = ...

解决此问题的最简单方法是使用预定义的pkgincludedir

pkginclude_HEADERS = ...

这将使用您的包的名称作为子目录的名称。

或者,您可以引入自己的目录变量,如:

myincludedir = $(includedir)/whatever
myinclude_HEADERS = ...