c++ - 如何从 makefile 在 Linux 上安装程序?

标签 c++ linux bash

<分区>

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/

相关文章:

android - 如何在 Linux 上编译 aFreeRDP

c++ - dlopen 或 dlclose 未调用信号处理程序

linux - 将多行附加到 Linux 文件中特定行的末尾

linux - 如何从文件列表中创建不存在的文件列表

python - 如何在 Linux/Unix 上根据文件类型添加文件扩展名?

c++ - 调用作为参数接收的可变参数模板的可变参数模板

c++ - 将 double 值乘以 10 时究竟发生了什么

c++ - 为什么不 boost 元组运算符 == 和 << 编译?

c++ - C++ 中 operator new[] 的参数值

javascript - 使用 JavaScript/Python/Bash 管理 API 调用