Vivek
Vivek

Reputation: 4636

Ubuntu: How to link a binary

I have a C++ code. I compiled it and I now have the binary xyz. Now everytime I need to execute the binary, I had to switch to the corresponding directory to execute it using ./xyz But how do I run the binary using a command say xyz from anywhere. How do I link this binary to a command in ubuntu. I currently use Ubuntu 10.10

Upvotes: 14

Views: 44665

Answers (2)

unutbu
unutbu

Reputation: 879591

Ubuntu sets your PATH environment variable to include ~/bin. So the easiest way to make xyz executable from anywhere is move xyz to ~/bin, or to make a symlink from ~/bin to the xyz's directory:

ln -s /path/to/xyz/directory/ ~/bin

Or, you could add /path/to/xyz/directory/ to your PATH environment variable.

Upvotes: 30

Poff
Poff

Reputation: 144

The problem is that Ubuntu doesn't know where to look for binary xyz.

You need to either add a path to your shell profile (it'll tell your shell where to look for programs like xyz) or add xyz to a directory that's already included in your path.

For example, /usr/bin is one place where binaries are stored normally. However, I'm not entirely sure what the generally accepted place to install new binaries is (/usr/bin might be generally reserved for system binaries).

Ubuntu by default uses a bash shell. In your home directory (~), you can check/edit your .profile file and either edit or see what directories are added to your PATH variable.

Upvotes: 1

Related Questions