configure:错误:C编译器无法创建可执行文件

Cou*_*one 132 macos memcached libevent osx-lion

我在stackoverflow上检查了一些类似的问题,但还没有找到答案.

我正在尝试在Lion OSX上安装memcached,如下所示.

这是我得到的:

j-court-demones-macbook-pro:libevent-1.4.12-stable jcourtdemone$ ./configure; make
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... 
configure: error: in `/tmp/libevent-1.4.12-stable':
configure: error: C compiler cannot create executables
See `config.log' for more details.
make: *** No targets specified and no makefile found.  Stop.
Run Code Online (Sandbox Code Playgroud)

我已经在几个地方重新安装了Xcode,但没有骰子.

这是我的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 configure, which was
generated by GNU Autoconf 2.63.  Invocation command line was

  $ ./configure 

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

hostname = j-court-demones-macbook-pro.local
uname -m = x86_64
uname -r = 11.3.0
uname -s = Darwin
uname -v = Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~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 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~1/RELEASE_X86_64
Kernel configured for up to 8 processors.
4 processors are physically available.
8 processors are logically available.
Processor type: i486 (Intel 80486)
Processors active: 0 1 2 3 4 5 6 7
Primary memory available: 4.00 gigabytes
Default processor set: 109 tasks, 599 threads, 8 processors
Load average: 0.98, Mach factor: 7.01
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /opt/local/bin
PATH: /opt/local/sbin
PATH: /opt/local/bin
PATH: /opt/local/sbin
PATH: /usr/bin
PATH: /Developer/usr/bin
PATH: /usr/bin
PATH: /bin
PATH: /usr/sbin
PATH: /sbin
PATH: /usr/local/bin
PATH: /usr/X11/bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2077: checking for a BSD-compatible install
configure:2145: result: /usr/bin/install -c
configure:2156: checking whether build environment is sane
configure:2199: result: yes
configure:2224: checking for a thread-safe mkdir -p
configure:2263: result: ./install-sh -c -d
configure:2276: checking for gawk
configure:2306: result: no
configure:2276: checking for mawk
configure:2306: result: no
configure:2276: checking for nawk
configure:2306: result: no
configure:2276: checking for awk
configure:2292: found /usr/bin/awk
configure:2303: result: awk
configure:2314: checking whether make sets $(MAKE)
configure:2336: result: yes
configure:2575: checking for gcc
configure:2591: found /Developer/usr/bin/gcc
configure:2602: result: gcc
configure:2834: checking for C compiler version
configure:2842: gcc --version >&5
i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5484)
Copyright (C) 2005 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.

configure:2846: $? = 0
configure:2853: gcc -v >&5
Using built-in specs.
Target: i686-apple-darwin9
Configured with: /var/tmp/gcc/gcc-5484~1/src/configure --disable-checking -enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib --build=i686-apple-darwin9 --with-arch=apple --with-tune=generic --host=i686-apple-darwin9 --target=i686-apple-darwin9
Thread model: posix
gcc version 4.0.1 (Apple Inc. build 5484)
configure:2857: $? = 0
configure:2864: gcc -V >&5
gcc-4.0: argument to `-V' is missing
configure:2868: $? = 1
configure:2891: checking for C compiler default output file name
configure:2913: gcc    conftest.c  >&5
ld: library not found for -lcrt1.10.5.o
collect2: ld returned 1 exit status
configure:2917: $? = 1
configure:2955: result: 
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE "libevent"
| #define VERSION "1.4.12-stable"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:2961: error: in `/tmp/libevent-1.4.12-stable':
configure:2964: error: C compiler cannot create executables
See `config.log' for more details.

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

ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=
ac_cv_env_CXXFLAGS_value=
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_F77_set=
ac_cv_env_F77_value=
ac_cv_env_FFLAGS_set=
ac_cv_env_FFLAGS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_AWK=awk
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_make_make_set=yes

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} /tmp/libevent-1.4.12-stable/missing --run aclocal-1.10'
AMDEPBACKSLASH=''
AMDEP_FALSE=''
AMDEP_TRUE=''
AMTAR='${SHELL} /tmp/libevent-1.4.12-stable/missing --run tar'
AR=''
AUTOCONF='${SHELL} /tmp/libevent-1.4.12-stable/missing --run autoconf'
AUTOHEADER='${SHELL} /tmp/libevent-1.4.12-stable/missing --run autoheader'
AUTOMAKE='${SHELL} /tmp/libevent-1.4.12-stable/missing --run automake-1.10'
AWK='awk'
BUILD_WIN32_FALSE=''
BUILD_WIN32_TRUE=''
CC='gcc'
CCDEPMODE=''
CFLAGS=''
CPP=''
CPPFLAGS=''
CXX=''
CXXCPP=''
CXXDEPMODE=''
CXXFLAGS=''
CYGPATH_W='echo'
DEFS=''
DEPDIR=''
DSYMUTIL=''
ECHO='/bin/echo'
ECHO_C='\c'
ECHO_N=''
ECHO_T=''
EGREP=''
EXEEXT=''
F77=''
FFLAGS=''
GREP=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LDFLAGS=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LIBTOOL_DEPS=''
LN_S=''
LTLIBOBJS=''
MAKEINFO='${SHELL} /tmp/libevent-1.4.12-stable/missing --run makeinfo'
MKDIR_P='./install-sh -c -d'
NMEDIT=''
OBJEXT=''
PACKAGE='libevent'
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
RANLIB=''
SED=''
SET_MAKE=''
SHELL='/bin/sh'
STRIP=''
VERSION='1.4.12-stable'
ac_ct_CC='gcc'
ac_ct_CXX=''
ac_ct_F77=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__fastdepCXX_FALSE=''
am__fastdepCXX_TRUE=''
am__include=''
am__isrc=''
am__leading_dot='.'
am__quote=''
am__tar='${AMTAR} chof - "$$tardir"'
am__untar='${AMTAR} xf -'
bindir='${exec_prefix}/bin'
build=''
build_alias=''
build_cpu=''
build_os=''
build_vendor=''
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE}'
dvidir='${docdir}'
exec_prefix='NONE'
host=''
host_alias=''
host_cpu=''
host_os=''
host_vendor=''
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='$(SHELL) /tmp/libevent-1.4.12-stable/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='$(top_builddir)/./install-sh -c -d'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr/local'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

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

#define PACKAGE_NAME ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define PACKAGE_STRING ""
#define PACKAGE_BUGREPORT ""
#define PACKAGE "libevent"
#define VERSION "1.4.12-stable"

configure: exit 77
Run Code Online (Sandbox Code Playgroud)

ste*_*ott 140

我安装了10.8和使用命令行工具的Xcode 4.4,但我仍然收到此错误.而不是重新安装Xcode,我注意到我的config.log中有两个相关的行:

configure:5130: checking for C compiler version
configure:5139: /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain/usr/bin/cc --version >&5
Run Code Online (Sandbox Code Playgroud)

那条路对我来说并不存在.相反,我有:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
Run Code Online (Sandbox Code Playgroud)

C编译器("cc")位于该xctoolchain目录中.我为OSX10.8.xctoolchain创建了一个符号链接,指向XcodeDefault.xctoolchain并修复它.现在,memcached安装脚本可以找到编译器版本并继续运行.

cd /Applications/Xcode.app/Contents/Developer/Toolchains
sudo ln -s XcodeDefault.xctoolchain OSX10.8.xctoolchain
Run Code Online (Sandbox Code Playgroud)

正如评论中所建议的,如果您在Yosemite(10.10)或Mavericks(10.9)上遇到此问题,您可以更新上面的符号链接命令以指向该特定版本(OSX10.9.xctoolchainOSX10.10.xctoolchain).

  • 这对我有用,谢谢!我有一个全新安装的OSX 10.8和最新的Xcode +命令行工具,所以这似乎不是一个与升级OSX相关的问题. (4认同)
  • 小牛队也是如此:sudo ln -s XcodeDefault.xctoolchain OSX10.9.xctoolchain (2认同)

Ken*_*ses 110

您有一套旧的开发人员工具.gcc报告其版本为4.0.1.从旧版本的操作系统迁移可能会遗留下来.如果您已安装Xcode 4.3.x,则需要启动它,进入其首选项,选择"下载"选项卡,然后单击"命令行工具"包旁边的"安装".

  • 如果您正在阅读这个答案,这绝对是您应该做的事情,但请注意,它不会解决您尝试构建的其他软件包的问题.因此,首先安装命令行工具,然后通过@sterescott查看下面的答案,这应该可以解决您的问题.像mod_jk这样的软件包在configure中使用`/ usr/sbin/apxs -q CC`来请求C编译器.APXS将它吐出来,但它有错误的路径,这就是为什么你不断出错. (4认同)
  • 在Xcode 7中,命令行工具位于"位置"选项卡中.在我的情况下,我通过选择Xcode 7.3.1修复了安装python的问题 (3认同)

kon*_*rad 69

当您看到此错误消息时,您可能尚未在升级后接受Xcode许可协议.

首先,确保已升级命令行工具:

$ xcode-select --install
Run Code Online (Sandbox Code Playgroud)

现在Apple希望您在使用这些工具之前同意他们的许可证:

$ gcc
Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.

$ sudo gcc
You have not agreed to the Xcode license agreements. You must agree to both license agreements below in order to use Xcode.
[...]
Run Code Online (Sandbox Code Playgroud)

接受后,命令行工具将按预期工作.

  • 这对我有用; Xcode是安装(干净的Mavericks安装),但命令行工具没有自动安装. (2认同)

Rim*_*ian 12

我已经在xcode中安装了命令行工具,但我仍然在错误中:

line 3619: /usr/bin/gcc-4.2: No such file or directory
Run Code Online (Sandbox Code Playgroud)

当我进入which gcc它返回

/usr/bin/gcc
Run Code Online (Sandbox Code Playgroud)

当我进入时,gcc -v我得到了一堆东西

..  
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
Run Code Online (Sandbox Code Playgroud)

所以我创建了一个符号链接:

cd /usr/bin
sudo ln -s gcc gcc-4.2
Run Code Online (Sandbox Code Playgroud)

它奏效了!

(config.log文件位于make尝试构建内容的目录中)

  • ln: gcc-4.2.1: 不允许操作。我在尝试这些步骤时收到此错误。 (2认同)

Dav*_*ams 11

我刚刚有这个问题构建apache.我使用的解决方案与Mostafa相同,我必须导出2个变量:

export CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
CPP='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -E'
Run Code Online (Sandbox Code Playgroud)

这是一个Mac OSX Mavericks


Gur*_* BN 6

首先使用获取gcc路径

命令:which gcc

输出:/usr/bin/gcc

我有同样的问题,请在下面的命令中设置 gcc 路径并安装

CC=/usr/bin/gcc rvm install 1.9.3

稍后,如果你得到“ Ruby was built without documentation ”,请运行下面的命令

rvm docs generate-ri


hom*_*jam 5

对我来说,这是 gcc 的问题,以gcc -v. 最近这篇文章说要升级 Xcode才能sudo xcode-select -switch /Applications/Xcode.app解决这个问题。


ynd*_*lok 5

将 'clang' 设置为编译器配置应该对我有用:

export CC=clang
pip install --no-clean pycrypto
Run Code Online (Sandbox Code Playgroud)