1
我通常編碼在OSX與編譯我的所有程序:-Wall -Wextra -Werror
GCC /鐺默認的錯誤標誌
我下載的另一臺筆記本電腦nixos
,當我要編譯的同一個項目,我有-Wunused-result
錯誤。
我可以禁用它:-Wno-unused-result
但爲什麼這個標誌錯誤出現在這個操作系統?
我找不到默認的標誌配置文件或環境變量。
爲了好奇,我試圖編譯的程序是:libft。
我通常編碼在OSX與編譯我的所有程序:-Wall -Wextra -Werror
GCC /鐺默認的錯誤標誌
我下載的另一臺筆記本電腦nixos
,當我要編譯的同一個項目,我有-Wunused-result
錯誤。
我可以禁用它:-Wno-unused-result
但爲什麼這個標誌錯誤出現在這個操作系統?
我找不到默認的標誌配置文件或環境變量。
爲了好奇,我試圖編譯的程序是:libft。
如果你正在編譯OSX上卻沒有安裝gcc
,蘋果已經提供clang
故作gcc
。假裝不太好,因爲警告(和退出代碼)有很多不同。你可以看到你正在使用
gcc --version
運行的和(例如‐我使用的MacPorts安裝GCC /opt
下):
$ path -lL gcc
-rwxr-xr-x 3 root admin 1131416 Jun 10 2016 /opt/local/bin/gcc
-rwxr-xr-x 1 root wheel 18176 Jul 8 22:52 /usr/bin/gcc
$ /opt/local/bin/gcc --version
gcc (MacPorts gcc5 5.4.0_0) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ /usr/bin/gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
正如你所看到的,/usr/bin/gcc
真的clang
,並且(禁止Apple進一步改進),會產生類似的信息。
這就是爲什麼我寫了gcc/clang,兩者都有相同的錯誤。 –