1

I built a C program using make on Ubuntu. The resulting bin file is executeable via ./binfilename but not by just executing it in the directory it was build. How can i "convert" it to a bin file that I can copy to /usr/bin so I can execute it "system-wide" or does this require a different build process?

jscott
  • 24,204
  • 8
  • 77
  • 99
bitrocker
  • 117
  • 1
  • 2

1 Answers1

5

This is not because there is a difference between the binaries but because the directory the binary is in is not in your PATH.

On Windows the current directory is always part of your PATH. However this is not secure (imagine someone placing a copy of rm named ls in some directory).

So you need to either place the binary in one of the directories in your PATH (see echo $PATH) or you have to add that particular directory to yuor PATH. e.g. by adding something like

PATH="$PATH:/home//bin"

to your ~/.bash_rc.

Bram
  • 1,121
  • 6
  • 9