在Mac Osx El Capitan上编译代码时gcc和clang之间的冲突

时间:2017-05-09 13:29:02

标签: xcode macos gcc fortran gfortran

我正在编译需要C和Fortran的代码(wgrib)。我在我的MacOsx El Capitan上安装了Xcode 7.3.1和Xcode 7.3的相关命令行工具。 我在编译wgrib(失败)后粘贴命令行和config.log。

export CC=/usr/bin/gcc

export FC=/usr/local/bin/gfortran

sudo make wgrib
makefile:362: *** ERROR, fortran compiler (enironment vararible FC) is not recognized.  Stop.


vi config.log



 This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by libaec configure 1.0.0, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure --disable-shared --prefix=/usr/local/grib2

## --------- ##
## Platform. ##
## --------- ##

hostname = IMac-Arianna.local
uname -m = x86_64
uname -r = 15.6.0
uname -s = Darwin
uname -v = Darwin Kernel Version 15.6.0: Fri Feb 17 10:21:18 PST 2017; root:xnu-3248.60.11.4.1~1/RELEASE_X86_64

/usr/bin/uname -p = i386
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = Mach kernel version:
         Darwin Kernel Version 15.6.0: Fri Feb 17 10:21:18 PST 2017; root:xnu-3248.60.11.4.1~1/RELEASE_X86_64
Kernel configured for up to 2 processors.
2 processors are physically available.
2 processors are logically available.
Processor type: i486 (Intel 80486)
Processors active: 0 1
Primary memory available: 4.00 gigabytes
Default processor set: 232 tasks, 903 threads, 2 processors
Load average: 4.19, Mach factor: 0.54
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /Library/Frameworks/Python.framework/Versions/3.5/bin
PATH: /opt/local/bin
PATH: /opt/local/sbin
PATH: /opt/local/bin
PATH: /opt/local/sbin
PATH: /Library/Frameworks/GDAL.framework/Programs
PATH: /opt/local/bin
PATH: /opt/local/sbin
PATH: .
PATH: /Users/arianna/seadas6.1/scripts
PATH: /Users/arianna/seadas6.1/bin
PATH: .
PATH: /Users/arianna/seadas6.1/src/lib3/hdf4/bin
PATH: /usr/bin
PATH: /bin
PATH: /usr/sbin
PATH: /sbin
PATH: /usr/local/bin
PATH: /opt/X11/bin
PATH: /Library/TeX/texbin
PATH: /Applications/itt/idl/idl80/bin/
## ----------- ##
## Core tests. ##
## ----------- ##

configure:2430: checking build system type
configure:2444: result: x86_64-apple-darwin15.6.0
configure:2464: checking host system type
configure:2477: result: x86_64-apple-darwin15.6.0
configure:2518: checking how to print strings
configure:2545: result: printf
configure:2617: checking for gcc
configure:2644: result: /usr/bin/gcc
configure:2873: checking for C compiler version
configure:2882: /usr/bin/gcc --version >&5
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
configure:2893: $? = 0
configure:2882: /usr/bin/gcc -v >&5
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
configure:2893: $? = 0
configure:2882: /usr/bin/gcc -V >&5
clang: error: argument to '-V' is missing (expected 1 value)
clang: error: no input files
configure:2893: $? = 1
configure:2882: /usr/bin/gcc -qversion >&5
clang: error: unknown argument: '-qversion'
clang: error: no input files
configure:2893: $? = 1
configure:2913: checking whether the C compiler works
configure:2935: /usr/bin/gcc -I/usr/local/grib2/include -Wall -Wmissing-prototypes -Wold-style-definition -Werror=format-security --fast-math -O3 -DGFORTRAN -fopenmp -I/usr/local/grib2/jasper-1.900.1/src/libjasper/include -I/usr/include    conftest.c  >&5
clang: error: unsupported option '--fast-math'
clang: error: unsupported option '-fopenmp'
clang: error: unsupported option '-fopenmp'
configure:2939: $? = 1
configure:2977: result: no
configure: failed program was:
| /* confdefs.h */
| /* confdefs.h */
| #define PACKAGE_NAME "libaec"
| #define PACKAGE_TARNAME "libaec"
| #define PACKAGE_VERSION "1.0.0"
| #define PACKAGE_STRING "libaec 1.0.0"
| #define PACKAGE_BUGREPORT "rosenhauer@dkrz.de"
| #define PACKAGE_URL ""
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:2982: error: in `/usr/local/grib2/libaec-1.0.0':
configure:2984: error: C compiler cannot create executables
See `config.log' for more details

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-apple-darwin15.6.0
ac_cv_env_CC_set=set
ac_cv_env_CC_value=/usr/bin/gcc
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-I/usr/local/grib2/include -Wall -Wmissing-prototypes -Wold-style-definition -Werror=format-security --fast-math -O3 -DGFORTRAN -fopenmp -I/usr/local/grib2/jasper-1.900.1/src/libjasper/include -I/usr/include '
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LT_SYS_LIBRARY_PATH_set=
ac_cv_env_LT_SYS_LIBRARY_PATH_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
AMDEP_TRUE=''
AMTAR=''
AM_BACKSLASH=''
AM_DEFAULT_V=''
AM_DEFAULT_VERBOSITY=''
AM_V=''
AR=''
AUTOCONF=''
AUTOHEADER=''
AUTOMAKE=''
AWK=''
CC='/usr/bin/gcc'
CCDEPMODE=''
CFLAGS='-I/usr/local/grib2/include -Wall -Wmissing-prototypes -Wold-style-definition -Werror=format-security --fast-math -O3 -DGFORTRAN -fopenmp -I/usr/local/grib2/jasper-1.900.1/src/libjasper/include -I/usr/include '
CFLAG_VISIBILITY=''
CPP=''
CPPFLAGS=''
CYGPATH_W=''
DEFS=''
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p=''
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr/local/grib2'
program_transform_name='s,x,x,'
psdir='${docdir}'
runstatedir='${localstatedir}/run'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''
pdfdir='${docdir}'
prefix='/usr/local/grib2'
program_transform_name='s,x,x,'
psdir='${docdir}'
runstatedir='${localstatedir}/run'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "libaec"
#define PACKAGE_TARNAME "libaec"
#define PACKAGE_VERSION "1.0.0"
#define PACKAGE_STRING "libaec 1.0.0"
#define PACKAGE_BUGREPORT "rosenhauer@dkrz.de"
#define PACKAGE_URL ""

configure: exit 77

1 个答案:

答案 0 :(得分:0)

您正在使用clang,而不是GNU gcc,如输出所示:

/usr/bin/gcc --version
Apple LLVM version 7.3.0 (clang-703.0.31)

已知libaec与clang存在兼容性问题,而使用真实的gcc应该可以解决您的问题:

brew install gcc
export CC=gcc-9   # Use the version listed in `ls /usr/local/bin/gcc-*`, not clang gcc
export FC=gfortran
make