2013-02-25 65 views
1

我編譯在linux C代碼用下面的命令:如何在編譯後在linux中執行程序?

 
gcc -o myprogram myprogram.c 

如果我沒有給名字了,我可以簡單地寫命令./a.out來執行它。但是現在,爲了執行這個程序,我只是在命令行中寫入「myprogram」,但它卻說「找不到命令」。我能做些什麼來執行它?

+3

當前工作目錄不在路徑上。 – Hogan 2013-02-25 17:30:13

+0

你真的應該習慣用'gcc -Wall -g myprogram.c -o myprogram'進行編譯,然後學習如何在'Makefile'中使用'make'。你還需要學習如何使用'gdb'調試器。 – 2013-02-25 18:50:18

回答

4

這可能是當前的目錄(「.」)不在您的PATH上。 (您可以通過鍵入echo $PATH檢查這一點,這是分隔的目錄列表「:」。‘.’應該是在列表中,如果你想運行在當前目錄下的東西。)

如果當前目錄ISN對你的PATH,你需要輸入./myprogram(或任何正確的路徑)。

2
./myprogram 

應該做的伎倆。

(不過說真的...你看着目錄的內容編譯程序「沒有名字」之後嗎?還是你覺得./a.out是一個神奇的序列猛砸承認?)

+1

@bigO - 僅供參考,假設您與'myprogram'在同一個目錄中,上面的答案是有效的。否則,'/ path/to/myprogram'也會起作用。 – 2013-02-25 17:29:31

+0

謝謝,工作 – yrazlik 2013-02-25 17:30:03

+1

@bigO在開始編程之前,請對您使用的計算機和操作系統有一個大致的瞭解,否則您會拍攝自己和其他人。 – 2013-02-25 17:30:44