아파치 2.2.15를 2.2.27로 업그레이드하려고합니다. apache2.2.15 / build에서 가져온 config.nice를 실행하는 동안 다음 오류가 발생합니다.
checking whether the C compiler works... no
configure: error: in `/home/vkuser/httpd-2.2.27/srclib/apr':
configure: error: C compiler cannot create executables
온라인 검색을 시도했지만 운이 없습니다. 작은 test.c 스크립트를 실행하여 c 컴파일러를 테스트했으며 정상적으로 실행됩니다. ‘kernel-devel’패키지 설치와 같은 온라인 솔루션은 거의 없었지만 문제를 해결하지 못했습니다. 이 기능을 작동 시키려면 어떻게해야합니까?
다음은 생성 된 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.67. Invocation command line was
$ ./configure --prefix=/opt/myapp/apache2.2 --with-mpm=worker --enable-static-support --enable-ssl=static --enable-modules=most --disable-authndbd --disable-authn-dbm --disable-dbd --enable-static-logresolve --enable-static-rotatelogs --enable-proxy=static --enable-proxyconnect=static --enable-proxy-ftp=static --enable-proxy-http=static --enable-rewrite=static --enable-so=static --with-ssl=/opt/myapp/apache2.2/openssl --host=x86_32-unknown-linux-gnu host_alias=x86_32-unknown-linux-gnu CFLAGS=-m32 LDFLAGS=-m32 --with-included-apr
## --------- ##
## Platform. ##
## --------- ##
hostname = dmcpq-000
uname -m = x86_64
uname -r = 2.6.18-348.12.1.el5
uname -s = Linux
uname -v = #1 SMP Mon Jul 1 17:54:12 EDT 2013
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = x86_64
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown
PATH: /opt/myapp/Entrust/GetAccess/Runtime/Apache22/bin
PATH: /usr/kerberos/sbin
PATH: /usr/kerberos/bin
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /sbin
PATH: /bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /root/bin
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2793: checking for chosen layout
configure:2795: result: Apache
configure:3598: checking for working mkdir -p
configure:3614: result: yes
configure:3629: checking build system type
configure:3643: result: x86_64-unknown-linux-gnu
configure:3663: checking host system type
configure:3676: result: x86_32-unknown-linux-gnu
configure:3696: checking target system type
configure:3709: result: x86_32-unknown-linux-gnu
## ---------------- ##
## Cache variables. ##
## ---------------- ##
ac_cv_build=x86_64-unknown-linux-gnu
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value=-m32
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=set
ac_cv_env_LDFLAGS_value=-m32
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=set
ac_cv_env_host_alias_value=x86_32-unknown-linux-gnu
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_host=x86_32-unknown-linux-gnu
ac_cv_mkdir_p=yes
ac_cv_target=x86_32-unknown-linux-gnu
## ----------------- ##
## Output variables. ##
## ----------------- ##
APACHECTL_ULIMIT=''
APR_BINDIR=''
APR_CONFIG=''
APR_INCLUDEDIR=''
APR_VERSION=''
APU_BINDIR=''
APU_CONFIG=''
APU_INCLUDEDIR=''
APU_VERSION=''
AP_BUILD_SRCLIB_DIRS=''
AP_CLEAN_SRCLIB_DIRS=''
AP_LIBS=''
AWK=''
BUILTIN_LIBS=''
CC=''
CFLAGS='-m32'
CORE_IMPLIB=''
CORE_IMPLIB_FILE=''
CPP=''
CPPFLAGS=''
CRYPT_LIBS=''
CXX=''
CXXFLAGS=''
DEFS=''
DSO_MODULES=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EXEEXT=''
EXTRA_CFLAGS=''
EXTRA_CPPFLAGS=''
EXTRA_CXXFLAGS=''
EXTRA_INCLUDES=''
EXTRA_LDFLAGS=''
EXTRA_LIBS=''
GREP=''
HTTPD_LDFLAGS=''
HTTPD_VERSION=''
INCLUDES=''
INSTALL=''
INSTALL_DSO=''
INSTALL_PROG_FLAGS=''
LDFLAGS='-m32'
LIBOBJS=''
LIBS=''
LIBTOOL=''
LN_S=''
LTCFLAGS=''
LTFLAGS=''
LTLIBOBJS=''
LT_LDFLAGS=''
LYNX_PATH=''
MKDEP=''
MKINSTALLDIRS=''
MK_IMPLIB=''
MODULE_CLEANDIRS=''
MODULE_DIRS=''
MOD_ACTIONS_LDADD=''
MOD_ALIAS_LDADD=''
MOD_ASIS_LDADD=''
MOD_AUTHNZ_LDAP_LDADD=''
MOD_AUTHN_ALIAS_LDADD=''
MOD_AUTHN_ANON_LDADD=''
MOD_AUTHN_DBD_LDADD=''
MOD_AUTHN_DBM_LDADD=''
MOD_AUTHN_DEFAULT_LDADD=''
MOD_AUTHN_FILE_LDADD=''
MOD_AUTHZ_DBM_LDADD=''
MOD_AUTHZ_DEFAULT_LDADD=''
MOD_AUTHZ_GROUPFILE_LDADD=''
MOD_AUTHZ_HOST_LDADD=''
MOD_AUTHZ_OWNER_LDADD=''
MOD_AUTHZ_USER_LDADD=''
MOD_AUTH_BASIC_LDADD=''
MOD_AUTH_DIGEST_LDADD=''
MOD_AUTOINDEX_LDADD=''
MOD_BUCKETEER_LDADD=''
MOD_CACHE_LDADD=''
MOD_CASE_FILTER_IN_LDADD=''
MOD_CASE_FILTER_LDADD=''
MOD_CERN_META_LDADD=''
MOD_CGID_LDADD=''
MOD_CGI_LDADD=''
MOD_CHARSET_LITE_LDADD=''
MOD_DAV_FS_LDADD=''
MOD_DAV_LDADD=''
MOD_DAV_LOCK_LDADD=''
MOD_DBD_LDADD=''
MOD_DEFLATE_LDADD=''
MOD_DIR_LDADD=''
MOD_DISK_CACHE_LDADD=''
MOD_DUMPIO_LDADD=''
MOD_ECHO_LDADD=''
MOD_ENV_LDADD=''
MOD_EXAMPLE_LDADD=''
MOD_EXPIRES_LDADD=''
MOD_EXT_FILTER_LDADD=''
MOD_FILE_CACHE_LDADD=''
MOD_FILTER_LDADD=''
MOD_HEADERS_LDADD=''
MOD_HTTP_LDADD=''
MOD_IDENT_LDADD=''
MOD_IMAGEMAP_LDADD=''
MOD_INCLUDE_LDADD=''
MOD_INFO_LDADD=''
MOD_ISAPI_LDADD=''
MOD_LDAP_LDADD=''
MOD_LOGIO_LDADD=''
MOD_LOG_CONFIG_LDADD=''
MOD_LOG_FORENSIC_LDADD=''
MOD_MEM_CACHE_LDADD=''
MOD_MIME_LDADD=''
MOD_MIME_MAGIC_LDADD=''
MOD_NEGOTIATION_LDADD=''
MOD_OPTIONAL_FN_EXPORT_LDADD=''
MOD_OPTIONAL_FN_IMPORT_LDADD=''
MOD_OPTIONAL_HOOK_EXPORT_LDADD=''
MOD_OPTIONAL_HOOK_IMPORT_LDADD=''
MOD_PROXY_AJP_LDADD=''
MOD_PROXY_BALANCER_LDADD=''
MOD_PROXY_CONNECT_LDADD=''
MOD_PROXY_FTP_LDADD=''
MOD_PROXY_HTTP_LDADD=''
MOD_PROXY_LDADD=''
MOD_PROXY_SCGI_LDADD=''
MOD_REQTIMEOUT_LDADD=''
MOD_REWRITE_LDADD=''
MOD_SETENVIF_LDADD=''
MOD_SO_LDADD=''
MOD_SPELING_LDADD=''
MOD_SSL_LDADD=''
MOD_STATUS_LDADD=''
MOD_SUBSTITUTE_LDADD=''
MOD_SUEXEC_LDADD=''
MOD_UNIQUE_ID_LDADD=''
MOD_USERDIR_LDADD=''
MOD_USERTRACK_LDADD=''
MOD_VERSION_LDADD=''
MOD_VHOST_ALIAS_LDADD=''
MPM_LIB=''
MPM_NAME=''
MPM_SUBDIR_NAME=''
NONPORTABLE_SUPPORT=''
NOTEST_CFLAGS=''
NOTEST_CPPFLAGS=''
NOTEST_CXXFLAGS=''
NOTEST_LDFLAGS=''
NOTEST_LIBS=''
OBJEXT=''
OS=''
OS_DIR=''
OS_SPECIFIC_VARS=''
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
PCRE_CONFIG=''
PICFLAGS=''
PILDFLAGS=''
PKGCONFIG=''
PORT=''
POST_SHARED_CMDS=''
PRE_SHARED_CMDS=''
RANLIB=''
RM=''
RSYNC=''
SHELL='/bin/sh'
SHLIBPATH_VAR=''
SHLTCFLAGS=''
SH_LDFLAGS=''
SH_LIBS=''
SH_LIBTOOL=''
SSLPORT=''
SSL_LIBS=''
UTIL_LDFLAGS=''
ab_LTFLAGS=''
abs_srcdir=''
ac_ct_CC=''
ap_make_delimiter=''
ap_make_include=''
bindir='${exec_prefix}/bin'
build='x86_64-unknown-linux-gnu'
build_alias=''
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='unknown'
cgidir='${datadir}/cgi-bin'
checkgid_LTFLAGS=''
datadir='${prefix}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE}'
dvidir='${docdir}'
errordir='${datadir}/error'
exec_prefix='${prefix}'
exp_bindir='/opt/myapp/apache2.2/bin'
exp_cgidir='/opt/myapp/apache2.2/cgi-bin'
exp_datadir='/opt/myapp/apache2.2'
exp_errordir='/opt/myapp/apache2.2/error'
exp_exec_prefix='/opt/myapp/apache2.2'
exp_htdocsdir='/opt/myapp/apache2.2/htdocs'
exp_iconsdir='/opt/myapp/apache2.2/icons'
exp_includedir='/opt/myapp/apache2.2/include'
exp_installbuilddir='/opt/myapp/apache2.2/build'
exp_libdir='/opt/myapp/apache2.2/lib'
exp_libexecdir='/opt/myapp/apache2.2/modules'
exp_localstatedir='/opt/myapp/apache2.2'
exp_logfiledir='/opt/myapp/apache2.2/logs'
exp_mandir='/opt/myapp/apache2.2/man'
exp_manualdir='/opt/myapp/apache2.2/manual'
exp_proxycachedir='/opt/myapp/apache2.2/proxy'
exp_runtimedir='/opt/myapp/apache2.2/logs'
exp_sbindir='/opt/myapp/apache2.2/bin'
exp_sysconfdir='/opt/myapp/apache2.2/conf'
host='x86_32-unknown-linux-gnu'
host_alias='x86_32-unknown-linux-gnu'
host_cpu='x86_32'
host_os='linux-gnu'
host_vendor='unknown'
htcacheclean_LTFLAGS=''
htdbm_LTFLAGS=''
htdigest_LTFLAGS=''
htdocsdir='${datadir}/htdocs'
htmldir='${docdir}'
htpasswd_LTFLAGS=''
httxt2dbm_LTFLAGS=''
iconsdir='${datadir}/icons'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
installbuilddir='${datadir}/build'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/modules'
localedir='${datarootdir}/locale'
localstatedir='${prefix}'
logfiledir='${localstatedir}/logs'
logresolve_LTFLAGS=''
mandir='${prefix}/man'
manualdir='${datadir}/manual'
nonssl_listen_stmt_1=''
nonssl_listen_stmt_2=''
oldincludedir='/usr/include'
other_targets=''
pdfdir='${docdir}'
perlbin=''
prefix='/opt/myapp/apache2.2'
progname=''
program_transform_name='s,x,x,'
proxycachedir='${localstatedir}/proxy'
psdir='${docdir}'
rel_bindir='bin'
rel_cgidir='cgi-bin'
rel_datadir=''
rel_errordir='error'
rel_exec_prefix=''
rel_htdocsdir='htdocs'
rel_iconsdir='icons'
rel_includedir='include'
rel_installbuilddir='build'
rel_libdir='lib'
rel_libexecdir='modules'
rel_localstatedir=''
rel_logfiledir='logs'
rel_mandir='man'
rel_manualdir='manual'
rel_proxycachedir='proxy'
rel_runtimedir='logs'
rel_sbindir='bin'
rel_sysconfdir='conf'
rotatelogs_LTFLAGS=''
runtimedir='${localstatedir}/logs'
sbindir='${exec_prefix}/bin'
shared_build=''
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/conf'
target='x86_32-unknown-linux-gnu'
target_alias=''
target_cpu='x86_32'
target_os='linux-gnu'
target_vendor='unknown'
configure: exit 1
답변
주어진 출력에서 64 비트 시스템에서 32 비트 아파치 빌드를 컴파일하려고합니다. 이것은 여기에서 구성하는 입력에서 나온 것입니다.
--host=x86_32-unknown-linux-gnu host_alias=x86_32-unknown-linux-gnu CFLAGS=-m32 LDFLAGS=-m32
또한이를 확인하는 출력 라인을 참조하십시오.
configure:3629: checking build system type
configure:3643: result: x86_64-unknown-linux-gnu
configure:3663: checking host system type
configure:3676: result: x86_32-unknown-linux-gnu
configure:3696: checking target system type
configure:3709: result: x86_32-unknown-linux-gnu
여기서는 64 비트 빌드 시스템을 사용하지만 32 비트 호스트 / 대상을 사용하고 있습니다. 더 아래로 우리는 참조하십시오 :
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value=-m32
이 플래그는 gcc에게 32 비트 객체를 생성하도록 지시합니다. C 컴파일러가 실행 파일을 생성 할 수 없다는 오류는 32 비트 툴체인이 없기 때문에 발생할 수 있습니다.
32 비트 객체를 컴파일하는 능력 테스트
작은 C 예제를 -m32
플래그 로 컴파일하여이를 테스트 할 수 있습니다 .
// Minimal C example
#include <stdio.h>
int main()
{
printf("This works\n");
return 0;
}
컴파일 :
gcc -m32 -o m32test m32test.c
이 명령이 실패하면 컴파일러에서 32 비트 객체를 빌드 할 수없는 문제가있는 것입니다. 컴파일러에서 생성 된 오류 메시지가이를 해결하는 데 도움이 될 수 있습니다.
구제
- 32 비트 빌드를 강제하는 구성 옵션을 제거하여 64 비트 대상을 빌드하거나
- 32 비트 컴파일러 툴체인 설치
답변
CC=''
컴파일러가 설정되지 않았다고 알려줍니다. gcc가 설치되어 있습니까?
시험:
which gcc
데비안에서는 아마도 다음과 같은 빌드 환경을 설치해야합니다 :
apt-get install build-essential
또는 더 나은 :
apt-get build-dep your-package-name
답변
많은 이유가있을 수 있습니다. 가장 자주 일어나는 일은 CFLAGS를 명령 줄이나 환경에 설정하여 휴지통에 버리는 것입니다. 일 년에 몇 번 나에게 일이 생기며 나는 그 해결책을 결코 기억하지 못하기 때문에 보통 구글에 가야한다. “아, 또”
그냥 시도
echo $CFLAGS
거기 거기에 아무것도 안 대부분의 시간을. 있으면 잘못되었을 수 있습니다.
다른 경우에는 32 비트 Linux에서 작동하는 구성 스크립트에 줄을 입력했지만 이후 64 비트로 전환했으며 일부 -march -mfpu 항목이 잘못되었습니다. 내 요점은 잘못된 오류 메시지입니다. 컴파일러가 작동하지 않는 것이 아니라 컴파일 오류가 있음을 의미합니다.
답변
C 컴파일러를 설치했다고 생각했지만 실제로 설치되지 않은 경우이 오류가 발생했습니다.
다음과 같이 실행 한 C 모듈을로드하는 실행 스크립트가 있습니다.
./load_modules.sh
그러나 스크립트를 실행하면 해당 스크립트 기간 동안 모듈 만로드됩니다. 스크립트가 모듈을로드 상태로 유지하려면 다음을 실행해야합니다.
source load_modules.sh
터미널에 입력되는 것처럼 행을 실행합니다.