После установки Cygwin в $PATH не найден приемлемый компилятор C

Я хочу установить шлюз Kannel на WindowsXP. Для этого я скачал и установил Cygwin. Но когда я пошел настраивать Kannel, я получил следующие ошибки. (Я установил PATH как C:\cygwin\bin;C:\libxml2-2.6.30+.win32\bin;)

Running system checks ...
checking build system type... i686-pc-cygwin
checking host system type... i686-pc-cygwin
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.

Файл журнала выглядит следующим образом.

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.62.  Invocation command line was

$ ./configure 

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

hostname = sreeni9
uname -m = i686
uname -r = 1.7.1(0.218/5/3)
uname -s = CYGWIN_NT-5.1
uname -v = 2009-12-07 11:48

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

/bin/arch              = i686
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/local/bin
PATH: /usr/bin
PATH: /bin
PATH: /cygdrive/c/WINDOWS/system32
PATH: /cygdrive/c/WINDOWS
PATH: /cygdrive/c/WINDOWS/System32/Wbem
PATH: /usr/bin
PATH: /cygdrive/c/libxml2-2.6.30+.win32/bin
PATH: /cygdrive/c/Program Files/Java/jdk1.6.0_16/bin
PATH: .


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

configure:2053: checking build system type
configure:2071: result: i686-pc-cygwin
configure:2093: checking host system type
configure:2108: result: i686-pc-cygwin
configure:2180: checking for gcc
configure:2210: result: no
configure:2277: checking for cc
configure:2324: result: no
configure:2380: checking for cl.exe
configure:2410: result: no
configure:2439: error: no acceptable C compiler found in $PATH
See `config.log' for more details.

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

ac_cv_build=i686-pc-cygwin
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_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_YACC_set=
ac_cv_env_YACC_value=
ac_cv_env_YFLAGS_set=
ac_cv_env_YFLAGS_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_host=i686-pc-cygwin

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

AR=''
CC=''
CFLAGS=''
CONVERT=''
CPP=''
CPPFLAGS=''
DEFS=''
DOCDRAFTS=''
DOCSTARGET=''
DVIPS=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EXEEXT=''
EXE_EXT=''
FIG2DEV=''
GREP=''
GW_VERSION=''
HTML_DSL=''
INSTALL_DATA=''
INSTALL_PROGRAM=''
INSTALL_SCRIPT=''
JADE=''
JADETEX=''
LDFLAGS=''
LEX=''
LEXLIB=''
LEX_OUTPUT_ROOT=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LTLIBOBJS=''
MYSQL_CONFIG=''
OBJEXT=''
OPENSSL=''
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
PCRE_CONFIG=''
PDFJADETEX=''
PERL=''
PGSQL_CONFIG=''
PKGADD_NAME='Kannel - WAP and SMS gateway'
PKGADD_PKG='KANNELgateway'
PKGADD_VENDOR='www.kannel.org'
RANLIB=''
SDB_CONFIG=''
SHELL='/bin/sh'
SIZEOF_INT=''
SIZEOF_LONG=''
SIZEOF_LONG_LONG=''
SIZEOF_SHORT=''
SQLITE3=''
SQLITE=''
STARTSTOPDAEMONSRC=''
SUFFIX=''
TEX_DSL=''
VERSION='1.4.3'
XML_CONFIG=''
YACC=''
YFLAGS=''
ac_ct_CC=''
bindir='${exec_prefix}/bin'
build='i686-pc-cygwin'
build_alias=''
build_cpu='i686'
build_os='cygwin'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${prefix}/share/doc/kannel'
dvidir='${docdir}'
exec_prefix='NONE'
host='i686-pc-cygwin'
host_alias=''
host_cpu='i686'
host_os='cygwin'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='NONE'
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 GW_NAME "Kannel"
#define GW_VERSION "1.4.3"
#define VERSION "1.4.3"

configure: exit 1

person sekar.malepati    schedule 09.02.2010    source источник


Ответы (6)


Похоже, вы не установили gcc при установке cygwin. Повторно запустите установку, выбрав gcc для установки.

person Ignacio Vazquez-Abrams    schedule 09.02.2010
comment
Правильный пакет — gcc-g++, как указано в ответе Химаншу. В cygwin нет пакета gcc. - person Wtower; 17.01.2019

Что ж, мое первое предположение состоит в том, что вы на самом деле не установили все Cygwin. Установка по умолчанию не устанавливает каждый отдельный пакет, а только подмножество.

Вот почему я всегда меняю тип установки на "Полная" при запуске setup.exe(a).

Входит ли gcc в стандартную установку, я не знаю, так как никогда не устанавливаю стандартную. Тем не менее, он должен быть в /usr/bin/gcc, такой же, как моя система, и которая находится на вашем пути. Откройте оболочку bash и выполните:

ls -al /usr/bin/gcc

чтобы увидеть, если это там.


(a) Имейте в виду, что это не быстрый процесс, загрузка/установка которого может занять много часов, поэтому я обычно загрузить новую версию один раз и использовать эту кешированную копию для установки много раз.

person paxdiablo    schedule 09.02.2010
comment
cygwin.com/setup.exe — это программа установки. Когда вы запустите это, загрузите все на локальный диск и запишите на DVD, а затем установите оттуда все. Таким образом, вам нужно будет загрузить только один раз. - person paxdiablo; 09.02.2010
comment
@sekar.malepati, вы также можете попробовать использовать apt-cyg, установив его, как apt-get или yum, в других дистрибутивах * nix. - person Highmastdon; 09.04.2013
comment
Если вы не хотите устанавливать все, вы можете запустить команду, показанную на этот сайт. setup-x86_64.exe -q -P wget -P gcc-g++ -P make -P diffutils -P libmpfr-devel -P libgmp-devel -P libmpc-devel - person OJ7; 04.04.2016
comment
Должны ли и Cygwin, и GCC быть в PATH, или достаточно, чтобы Cygwin был в нем, чтобы GCC работал? - person Hashim Aziz; 31.01.2017
comment
Также на Cygwin нет usr/bin. Пакеты GCC расположены по адресу cygwin64\lib\gcc. - person Hashim Aziz; 31.01.2017
comment
@Hashim, из оболочки bash /usr/bin действительно существует. Путь, о котором вы говорите, - это если вы используете Windows cmd.exe, и в этом случае это будет c:\cygwin\bin\gcc. - person paxdiablo; 31.01.2017
comment
@paxdiablo, я знаю о разнице между путями CMD и bash, но я имел в виду реальную структуру каталогов в Windows. Если посмотреть на него через проводник Windows, то внутри bin просто нет usr, а gcc пакеты находятся в C:\cygwin\lib\gcc. - person Hashim Aziz; 31.01.2017
comment
@Hashim, мне не совсем понятно, в чем конкретно заключается ваше утверждение в отношении моего ответа, возможно, вы могли бы уточнить или предложить, что бы вы хотели изменить, если что. Я ясно сказал: «Откройте оболочку bash и выполните... так что, хотя тот факт, что она может быть по другому пути при просмотре из cmd/Explorer, интересен, я м не уверен, что вижу актуальность. - person paxdiablo; 01.02.2017
comment
Возможно, в этом посте должно быть предупреждение. Я не знаю, исходит ли это от меня после этого решения через 10 лет (!), Но я потратил целый день, пытаясь установить полный Cygwin; в настоящее время я готов на 80%, затрачено 11 часов (пока) и загружено 17 ГБ пакетов... К этому не следует подходить легкомысленно! - person tgrandje; 25.02.2021
comment
@tgrandje, вы правы, это никогда не было быстрым процессом, добавлено предупреждение :-) - person paxdiablo; 25.02.2021

Это означает, что у вас есть cygwin, который не содержит компилятора gcc-g++.

снова запустите программу установки (setup-x86_64.exe) и выберите пакет

gcc-г++

и тогда установка будет работать нормально. Я проверил это и работал нормально.

person Himanshu sharma    schedule 13.08.2017

Вам нужно выбрать gcc, gdb, make и т. д. при установке cygwin, эти параметры не установлены по умолчанию. можно найти на вкладке разработки пакетов.

person Sidharth Magoon    schedule 24.03.2020

Это может произойти, если вы выберете один из предложенных вариантов, кроме «Установить из Интернета» в диалоговом окне установки Cygwin:

введите здесь описание изображения

Если вы используете другие параметры, кажется, что вы можете получить отсутствующие файлы. Пробовал на двух разных машинах и в обоих случаях в категории Devel был только один файл, ничего общего с gcc. И это несмотря на то, что вы проходите построчно и проверяете все для полной установки.

В отчаянии я пробовал все, что мог придумать, и как только я попробовал «Установить из Интернета», обе машины сразу же показали огромный список в категории Devel, включая записи gcc, и затем я получил полную установку.

Возможно, это был сбой зеркала/загрузки, так как я обнаружил, что после использования опции Интернета я не смог воспроизвести исходную проблему ни на одной из машин. (Я пытался сделать так, чтобы получить скриншот для этого поста.) Но было бы странно получить один и тот же сбой при загрузке дважды подряд на разных машинах.

Независимо от того, как именно это может произойти, факт остается фактом: загрузка прошла успешно, и я ни разу не был уведомлен о какой-либо проблеме, поэтому не было никаких оснований сомневаться в том, что я загрузил полный набор файлов. И в итоге после того, как я выбрал загрузку на диск, а затем установку с него, я навсегда застрял с отсутствующими файлами, не зная, в чем проблема. По счастливой случайности я наткнулся на тот факт, что использование интернет-варианта решит проблему.

person Reg Edit    schedule 09.04.2017
comment
Downvoters, пожалуйста, прокомментируйте! Это помогло мне и как минимум одному голосующему. Если это можно как-то улучшить или исправить, не молчите. - person Reg Edit; 15.08.2017

Если вы установили apt-cyg, вы можете использовать следующую команду для его установки:

apt-cyg install gcc-g++
person aircraft    schedule 21.08.2018