Подтвердить что ты не робот

Configure: ошибка: компилятор C не может создавать исполняемые файлы

Я проверил ряд подобных вопросов в stackoverflow, но пока не нашел ответа.

Я пытаюсь установить memcached на Lion OSX как показанный здесь.

Вот что я получаю:

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.

Я переустановил 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
4b9b3361

Ответ 1

У вас есть старый набор инструментов для разработчиков. gcc сообщает свою версию как 4.0.1. Это может быть оставлено после перехода от более старой версии ОС. Если вы установили Xcode 4.3.x, вам нужно запустить его, перейти к его настройкам, выбрать вкладку "Загрузки" и нажать "Установить" рядом с пакетом инструментов командной строки.

Ответ 2

У меня установлен 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

Этот путь для меня не существовал. Вместо этого я:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain

Компилятор C ( "cc" ) находится внутри этого каталога xctoolchain. Я создал символическую ссылку для OSX10.8.xctoolchain, чтобы указать на XcodeDefault.xctoolchain и исправил ее. Теперь memcached-установка script может найти версию компилятора и продолжить работу.

cd /Applications/Xcode.app/Contents/Developer/Toolchains
sudo ln -s XcodeDefault.xctoolchain OSX10.8.xctoolchain

Как указано в комментариях, если у вас возникла эта проблема в Yosemite (10.10) или Mavericks (10.9), вы можете обновить вышеприведенную команду symlink, чтобы указать на эту конкретную версию (OSX10.9.xctoolchain или OSX10.10.xctoolchain).

Ответ 3

Когда вы увидите это сообщение об ошибке, возможно, вы не приняли лицензионное соглашение Xcode еще после обновления.

Прежде всего, убедитесь, что вы обновили свои инструменты командной строки:

$ xcode-select --install

Теперь 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.
[...]

После того, как вы его приняли, инструменты командной строки будут работать как ожидалось.

Ответ 4

Я уже установил инструменты командной строки в xcode, но я все еще ошибся:

line 3619: /usr/bin/gcc-4.2: No such file or directory

Когда я ввел which gcc, он вернул

/usr/bin/gcc

Когда я вошел gcc -v, я получил кучу вещей, а затем

..  
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)

Итак, я создал символическую ссылку:

cd /usr/bin
sudo ln -s gcc gcc-4.2

И это сработало!

(файл config.log находится в каталоге, который пытается создать что-то)

Ответ 5

У меня просто возникла проблема с созданием apache. Решение, которое я использовал, было таким же, как у Мостафы, мне пришлось экспортировать 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'

Это был один Mac OSX Mavericks

Ответ 6

Для меня это была проблема с gcc, выделенная gcc -v. Дело в том, что недавно обновленный Xcode этот пост сказал sudo xcode-select -switch /Applications/Xcode.app, который исправил проблему.

Ответ 7

Установка "clang", поскольку настройка компилятора должна работать для меня:

export CC=clang
pip install --no-clean pycrypto

Ответ 8

Если кто-то придет сюда, потому что RVM/Ruby создает проблемы (Middleman/Grunt), я решил свою проблему.

PS. Ответ от steroscott исправил мою проблему некоторое время назад... на этот раз не так.

В моем случае rvm пытается использовать загруженный gcc через homebrew. Я выполнил brew удаление gcc (gcc46 для меня) и заново запустил код для рубиновой установки (старый проект old ruby ​​v)

$ brew uninstall gcc46

$ rvm install 1.9.3

во время этого процесса проверки требований он автоматически вывел новый gcc для меня и бум, все работает сейчас. О большой записке, установка gcc из команды rvm может занять около 10-15 минут, не выкидывая какой-либо текст, он не застыл:) Удачи.

Ответ 9

Я яростно прочитал всю эту страницу, надеясь найти решение для:

"configure: error: C compiler cannot create executables"

В конце концов ничего не получилось, потому что моя проблема была "типизирована" и была связана с CFLAGS. В моем файле .bash_profile у меня было:

export ARM_ARCH="arm64"
export CFLAGS="-arch ${ARM_ARCH}"

Как вы можете заметить --- export ARM_ARCH = "arm64" --- последний знак кавычки не совпадает с первым знаком котировки. Первый ( ") является законным, а второй (" ) - нет.
Это произошло потому, что я ошибся в использовании TextEdit (я работаю под MacOS), и это, по-видимому, функция SmartQuotes: знак цитаты ИЗМЕНЯЕТСЯ ОТ СЕБЯ НЕЗАКОННОМ СТИЛЕ, когда вы редактируете что-то рядом с ним. Извлеченный урок: используйте правильный текстовый редактор...

Ответ 10

В моем случае я попробовал xcode-select --install, но он говорит, что он недоступен из магазина. Затем, вдохновленный Римианом, я проверил свой gcc: gcc -v, а затем получил сообщение о том, что я не соглашался.

С этого момента я только что последовал за процессом соглашения от gcc -v, после того как я согласился, что это отлично работает для меня.

Ответ 11

Убедитесь, что в имени приложения Xcode нет пробелов (может случиться, если вы сохраните более старые версии, например, переименовав его в "Xcode 4.app" ); инструменты сборки будут ссылаться на пути пакета Xcode, и многие сценарии не могут правильно обрабатывать ссылки с пробелами.

Ответ 12

О clang iOS кросс-компилятор

Я обнаружил, что проблема была в miphoneos-version-min=5.0. Я изменился на miphoneos-version-min=8.0. Теперь он работает.

Я просто хочу предложить использовать создать простой файл test.c и скомпилировать его командой write в журнале.