執行任何GCC編譯C程序執行時,我已經從終端編譯gcc
任何C程序,我得到一個權限被拒絕的錯誤。拒絕了對OS X(10.8.2)山獅
要開始,我已經驗證了我的驅動器(在此之前,同樣的問題發生了什麼)在修復權限。
爲了說明和隔離問題,我會告訴你這個超簡單的Hello World程序會發生什麼情況(與其他程序,發生同樣的事情):
#include <stdio.h>
main()
{
printf("Hello World");
}
現在,我這個保存到我的桌面爲helloworld.c
。在這一點上,從桌面上,一個ls -l
回報:
total 8
-rw-r--r-- 1 michael staff 56 Mar 13 14:08 helloworld.c
然後,我gcc -c helloworld.c -o helloworld
編譯(我也試過沒有-o
標誌具有相同的結果編譯)。沒有警告或錯誤。一個ls -l
現在返回:
total 16
-rw-r--r-- 1 michael staff 56 Mar 13 14:08 helloworld.c
-rw-r--r-- 1 michael staff 724 Mar 13 14:16 helloworld.o
試圖執行的gcc的輸出,具有./helloworld.o
回報:
-bash: ./helloworld.o: Permission denied
只是爲了調試的緣故,如果我使用sudo(sudo ./helloworld.o
)執行,則返回:現在
sudo: ./helloworld.o: command not found
,如果我嘗試設置使用chmod +x helloworld.o
可執行的標誌,如被推薦上了很多搜索的r esults我發現,ls -l
回報:
total 16
-rw-r--r-- 1 michael staff 56 Mar 13 14:08 helloworld.c
-rwxr-xr-x 1 michael staff 724 Mar 13 14:16 helloworld.o
但是,試圖與./helloworld.o
執行現在返回:
-bash: ./helloworld.o: Malformed Mach-o file
現在,用於調試的緣故,where gcc
回報:
/usr/bin/gcc
所以,你可以看到我沒有使用第三方gcc
。
有誰知道可能是什麼問題?我嘗試過四處搜尋,但找不到任何工作解決方案。我早些時候遇到過這個問題,並且自從剛剛重新安裝OS X(出於不同的原因),並且仍然存在這樣一個乾淨且有組織的開發環境的問題。作爲參考,我使用的是OS X 10.8.2,並且具有Xcode 4.6以及最新版本的Xcode命令行工具(來自Apple的開發人員網站)。我沒有從Homebrew或任何其他第三方來源安裝gcc;它是Xcode命令行工具附帶的gcc。
非常感謝您的幫助!我非常感謝您花時間閱讀,診斷並提供幫助。 :)
我有這個問題,當我做foobar.c foobar.c有錯誤的地方。當我修復錯誤時,它就起作用了。 – quantumpotato 2014-01-12 00:23:29