Я понимаю, что таких сообщений много, и я прочитал несколько с прошлого года, когда впервые попытался установить версию 3.9.0. Самые свежие с какими-то дополнительными подсказками:
- https://coderhelper.com/a/66966659/1973798
- configure: ошибка: компилятор C не может создавать исполняемые файлы
Независимо от того, какую переменную среды я установил, обновляется ли XCode до самой последней версии 12.5 или придерживается версии 12.3 (которую пакеты HomeBrew считают устаревшей), я все равно не могу заставить pyenv установить версию 3.9.1.
На другом конце Homebrew установлены версии 3.9.1 и 3.9.5, так что каким-то образом компиляторы на месте и работают.
Последняя моя попытка использовать следующие переменные среды:
export MACOSX_DEPLOYMENT_TARGET="$(sw_vers -productVersion | cut -c -5)"
export LIBRARY_PATH="$(brew --prefix openssl)/lib:${LIBRARY_PATH}"
export PYTHON_CONFIGURE_OPTS="--enable-framework
export PYTHON_CONFIGURE_OPTS="--with-openssl=$(brew --prefix openssl) ${PYTHON_CONFIGURE_OPTS}"
export LDFLAGS="-L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib"
export CPPFLAGS="-I$(brew --prefix zlib)/include -I$(brew --prefix bzip2)/include"
export CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix zlib)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include"
export LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib"
Постоянно появляется следующее сообщение об ошибке.
BUILD FAILED (OS X 11.4 using python-build 20180424)
Inspect or clean up the working tree at /var/folders/c_/ll8fp86d39d2qthh_cbg8vlc0000gp/T/python-build.20210701193101.41835
Results logged to /var/folders/c_/ll8fp86d39d2qthh_cbg8vlc0000gp/T/python-build.20210701193101.41835.log
Last 10 log lines:
checking for python3.9... python3.9
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... "darwin"
checking for gcc... gcc-10
checking whether the C compiler works... no
configure: error: in `/var/folders/c_/ll8fp86d39d2qthh_cbg8vlc0000gp/T/python-build.20210701193101.41835/Python-3.9.1':
configure: error: C compiler cannot create executables
See `config.log' for more details
make: *** No targets specified and no makefile found. Stop.
Что вызывает у меня подозрение, так это последняя строка, которая немного отличается от других постов, похожих на мой. Или тот, где говорится, что «компилятор C не может создавать исполняемые файлы», который, как я думал, связан с тем, что iTerm не имеет полных разрешений на доступ к диску, что не так.
Я понятия не имею, что это за цель, поэтому я подумал, что описанный выше экспорт мог бы помочь, но это не так. Некоторые сайты предполагают необходимость запуска make, что я ожидаю от pyenv, но затем тот факт, что makefile отсутствует (я предполагаю, что это CMakeLists.txt), снова открывает целый ряд новых проблем.
Есть ли кто-нибудь, кто испытал то же самое или может помочь мне разобраться?
--
ОБНОВИТЬ
Список файлов конфигурации доступен здесь
Только что заметил, что когда я делаю pyenv which gcc
, вывод говорит /usr/bin/gcc. Учитывая, что следует использовать CommandLine Tools и/или HomeBrew gcc, не может ли это быть причиной проблем?
Не могли бы вы опубликовать соответствующие части вашего
config.log
, пожалуйста?Отвечает ли это на ваш вопрос? pyenv configure: ошибка: компилятор C не может создавать исполняемые файлы
@MarlonRichert уже просмотрел этот пост. Мой clang указывает на самый последний
Apple clang version 12.0.5 (clang-1205.0.22.11)
. Что странно, так это тот факт, что pyEnv продолжает искать Gcc10. Он у меня есть, но сегодня пришлось переустановить (с некоторыми ошибками), так как некоторое время назад доморощенный обновился до gcc11. Знаете ли вы, как сказать pyenv, чтобы использовать определенную версию?Скоро обновлю config.log, сейчас нужно бежать на встречу.
@MarlonRichert добавил основной файл и еще один комментарий выше. Спасибо, что изучили это.