【发布时间】:2026-02-11 13:55:02
【问题描述】:
我有一个 C++ 代码。我编译了它,现在我有了二进制 xyz。现在每次我需要执行二进制文件时,我都必须切换到相应的目录才能使用 ./xyz 执行它但是如何从任何地方使用命令说 xyz 来运行二进制文件。如何将此二进制文件链接到 ubuntu 中的命令。我目前使用的是 Ubuntu 10.10
【问题讨论】:
标签: linux ubuntu binaryfiles
我有一个 C++ 代码。我编译了它,现在我有了二进制 xyz。现在每次我需要执行二进制文件时,我都必须切换到相应的目录才能使用 ./xyz 执行它但是如何从任何地方使用命令说 xyz 来运行二进制文件。如何将此二进制文件链接到 ubuntu 中的命令。我目前使用的是 Ubuntu 10.10
【问题讨论】:
标签: linux ubuntu binaryfiles
Ubuntu 将您的 PATH 环境变量设置为包含 ~/bin。因此,让xyz 可以在任何地方执行的最简单方法是将xyz 移动到~/bin,或者从~/bin 建立一个符号链接到xyz 的目录:
ln -s /path/to/xyz/directory/ ~/bin
或者,您可以add /path/to/xyz/directory/ to your PATH 环境变量。
【讨论】:
问题是 Ubuntu 不知道去哪里寻找二进制 xyz。
您需要为您的 shell 配置文件添加一个路径(它会告诉您的 shell 在哪里寻找像 xyz 这样的程序)或将 xyz 添加到您的路径中已经包含的目录。
例如,/usr/bin 是一个正常存储二进制文件的地方。但是,我不完全确定安装新二进制文件的普遍接受的位置是什么(/usr/bin 可能通常保留给系统二进制文件)。
Ubuntu 默认使用 bash shell。在您的主目录 (~) 中,您可以检查/编辑您的 .profile 文件,然后编辑或查看哪些目录已添加到您的 PATH 变量中。
【讨论】:
export PATH=$PATH:/xyz_location,现在它工作了。谢谢波夫
/usr/local/bin/ 是安装本地编译的二进制文件以供系统范围使用的正确位置。对于单个用户,$HOME/bin。