<分区>
Possible Duplicate:
What should Linux/Unix 'make install' consist of?
我正在制作一个可以从命令行调用的程序,例如 ./prog arg1 arg2
。我在想,我怎样才能让它在系统的任何地方运行?我知道我可以将 prog
放入 /usr/bin/
,但是如果我的程序需要来自其安装目录(可以是用户下载它的任何地方)的资源怎么办?
<分区>
Possible Duplicate:
What should Linux/Unix 'make install' consist of?
我正在制作一个可以从命令行调用的程序,例如 ./prog arg1 arg2
。我在想,我怎样才能让它在系统的任何地方运行?我知道我可以将 prog
放入 /usr/bin/
,但是如果我的程序需要来自其安装目录(可以是用户下载它的任何地方)的资源怎么办?
最佳答案
将您的程序所在的目录放入path
环境变量中,或者将您的程序移动到已经在path
中的目录之一(通常需要 super 用户权限,我收集你没有的,因为你不会问这个问题)。
将目录添加到搜索路径的前面并让系统在 tcsh
上刷新其数据库,例如
setenv "my/directory:"$PATH
rehash
在 bash
上,我认为是
PATH=/my/directory:$PATH
export PATH
(无需重复)。请注意,上述命令将您的目录放在搜索路径的顶部,即这些将在其他任何目录之前被搜索。因此,如果您的程序名为“gcc”,那么将执行您的程序而不是 GNU C 编译器。或者,您可以将您的目录添加到搜索路径的末尾,在这种情况下,只有在搜索路径的任何其他目录中都没有找到同名的其他程序时,才会选取您的程序。
关于c++ - 如何从 makefile 在 Linux 上安装程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12654865/