Cách sửa cấu hình: error: Trình biên dịch C không thể tạo tệp thực thi


16

đã sử dụng

./configure DFLAGS="-03"

và đây là config.log

checking build system type... i686-pc-linux-gnu  
checking host system type... i686-pc-linux-gnu  
checking target system type... i686-pc-linux-gnu  
checking for a BSD-compatible install... /usr/bin/install -c  
checking whether build environment is sane... yes  
checking for a thread-safe mkdir -p... /bin/mkdir -p  
checking for gawk... gawk  
checking whether make sets $(MAKE)... yes  
checking whether make supports nested variables... yes  
checking whether to enable maintainer-specific portions of Makefiles... no  
checking for style of include used by make... GNU  
checking for gcc... gcc  
checking whether the C compiler works... no  
configure: error: in `/home/mike/cpuminer-2.4.2':  
configure: error: C compiler cannot create executables  

Hệ thống của tôi là Ubuntu 14.04 và các chi tiết hệ thống cho biết hệ điều hành là 32 bit. bất kỳ trợ giúp sẽ là tuyệt vời vì trình biên dịch thất bại bất cứ lúc nào tôi cố gắng sử dụng nó, không chỉ với cài đặt này.

đầu ra 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 cpuminer configure 2.4.2, which was  
generated by GNU Autoconf 2.69.  Invocation command line was  

  $ ./configure CFLAGS=-03  

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

hostname = mike-Dell-DM051  
uname -m = i686  
uname -r = 3.13.0-57-generic  
uname -s = Linux  
uname -v = #95-Ubuntu SMP Fri Jun 19 09:27:48 UTC 2015  

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

/bin/arch              = unknown  
/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/sbin  
PATH: /usr/local/bin  
PATH: /usr/sbin  
PATH: /usr/bin  
PATH: /sbin  
PATH: /bin  
PATH: /usr/games  
PATH: /usr/local/game  

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

configure:2336: checking build system type  
configure:2350: result: i686-pc-linux-gnu  
configure:2370: checking host system type  
configure:2383: result: i686-pc-linux-gnu  
configure:2403: checking target system type  
configure:2416: result: i686-pc-linux-gnu  
configure:2460: checking for a BSD-compatible install  
configure:2528: result: /usr/bin/install -c  
configure:2539: checking whether build environment is sane  
configure:2594: result: yes  
configure:2745: checking for a thread-safe mkdir -p  
configure:2784: result: /bin/mkdir -p  
configure:2791: checking for gawk  
configure:2807: found /usr/bin/gawk  
configure:2818: result: gawk  
configure:2829: checking whether make sets $(MAKE)  
configure:2851: result: yes  
configure:2880: checking whether make supports nested variables  
configure:2897: result: yes  
configure:3026: checking whether to enable maintainer-specific portions of Make$  
configure:3035: result: no  
configure:3061: checking for style of include used by make  
configure:3089: result: GNU  
configure:3160: checking for gcc  
configure:3176: found /usr/bin/gcc  
configure:3187: result: gcc  
configure:3416: checking for C compiler version  
configure:3425: gcc --version >&5  
gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4  
Copyright (C) 2013 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:3436: $? = 0  
configure:3425: gcc -v >&5  
Using built-in specs.  
COLLECT_GCC=gcc  
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/4.8/lto-wrapper  
Target: i686-linux-gnu  
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.4-2ubuntu1~1$  
Thread model: posix  
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04)  
configure:3436: $? = 0  
configure:3425: gcc -V >&5  
gcc: error: unrecognized command line option '-qversion'  
gcc: fatal error: no input files  
compilation terminated.  
configure:3436: $? = 4  
configure:3456: checking whether the C compiler works  
configure:3478: gcc -03   conftest.c  >&5  
gcc: error: unrecognized command line option '-03'  
configure:3482: $? = 1  
configure:3520: result: no  
configure: failed program was:  
| /* confdefs.h */  
| #define PACKAGE_NAME "cpuminer"  
| #define PACKAGE_TARNAME "cpuminer"  
| #define PACKAGE_VERSION "2.4.2"  
| #define PACKAGE_STRING "cpuminer 2.4.2"  
| #define PACKAGE_BUGREPORT ""  
| #define PACKAGE_URL ""| #define PACKAGE "cpuminer"  
| #define VERSION "2.4.2"  
| /* end confdefs.h.  */  
|  
| int  
| main ()  
| {  
|  
|   ;  
|   return 0;  
| }  
configure:3525: error: in `/home/mike/cpuminer-2.4.2':  
configure:3527: error: C compiler cannot create executables  
See `config.log' for more details  

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

ac_cv_build=i686-pc-linux-gnu  
ac_cv_env_CCASFLAGS_set=  
ac_cv_env_CCASFLAGS_value=  
ac_cv_env_CCAS_set=  
ac_cv_env_CCAS_value=  
ac_cv_env_CC_set=  
ac_cv_env_CC_value=  
ac_cv_env_CFLAGS_set=set  
ac_cv_env_CFLAGS_value=-03  
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_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-linux-gnu  
ac_cv_path_install='/usr/bin/install -c'ac_cv_path_mkdir=/bin/mkdir  
ac_cv_prog_AWK=gawk  
ac_cv_prog_ac_ct_CC=gcc  
ac_cv_prog_make_make_set=yes  
ac_cv_target=i686-pc-linux-gnu  
am_cv_make_support_nested_variables=yes  

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

ACLOCAL='${SHELL} /home/mike/cpuminer-2.4.2/missing aclocal-1.14'  
ALLOCA=''    
AMDEPBACKSLASH='\'  
AMDEP_FALSE='#'  
AMDEP_TRUE=''  
AMTAR='$${TAR-tar}'  
AM_BACKSLASH='\'  
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'  
AM_DEFAULT_VERBOSITY='1'  
AM_V='$(V)'  
ARCH_ARM_FALSE=''ARCH_ARM_TRUE=''  
ARCH_PPC_FALSE=''  
ARCH_PPC_TRUE=''  
ARCH_x86_64_FALSE=''  
ARCH_x86_64_TRUE=''  
ARCH_x86_FALSE=''  
ARCH_x86_TRUE=''  
AUTOCONF='${SHELL} /home/mike/cpuminer-2.4.2/missing autoconf'  
AUTOHEADER='${SHELL} /home/mike/cpuminer-2.4.2/missing autoheader'  
AUTOMAKE='${SHELL} /home/mike/cpuminer-2.4.2/missing automake-1.14'  
AWK='gawk'  
CC='gcc'  
CCAS=''  
CCASDEPMODE=''  
CCASFLAGS=''  
CCDEPMODE=''  
CFLAGS='-03'  
CPP=''  
CPPFLAGS=''  
CYGPATH_W='echo'  
DEFS=''  
DEPDIR='.deps'  
ECHO_C=''  
ECHO_N='-n'  
ECHO_T=''  
EGREP=''  
EXEEXT=''  
GREP=''  
HAVE_WINDOWS_FALSE=''  
HAVE_WINDOWS_TRUE=''  
INSTALL_DATA='${INSTALL} -m 644'  
INSTALL_PROGRAM='${INSTALL}'  
INSTALL_SCRIPT='${INSTALL}'  
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'  
JANSSON_LIBS=''  
LDFLAGS=''  
LIBCURL=''  
LIBCURL_CPPFLAGS=''  
LIBOBJS=''  
LIBS=''  
LTLIBOBJS=''  
MAINT='#'  
MAINTAINER_MODE_FALSE=''  
MAINTAINER_MODE_TRUE='#'MAKEINFO='${SHELL} /home/mike/cpuminer-2.4.2/missing makeinfo'  
MKDIR_P='/bin/mkdir -p'  
OBJEXT=''  
PACKAGE='cpuminer'  
PACKAGE_BUGREPORT=''  
PACKAGE_NAME='cpuminer'  
PACKAGE_STRING='cpuminer 2.4.2'  
PACKAGE_TARNAME='cpuminer'  
PACKAGE_URL=''  
PACKAGE_VERSION='2.4.2'  
PATH_SEPARATOR=':'  
PTHREAD_FLAGS=''  
PTHREAD_LIBS=''  
RANLIB=''  
SET_MAKE=''  
SHELL='/bin/bash'  
STRIP=''  
USE_ASM_FALSE=''  
USE_ASM_TRUE=''  
VERSION='2.4.2'  
WANT_JANSSON_FALSE=''  
WANT_JANSSON_TRUE=''  
S2_LIBS=''  
_libcurl_config=''  
ac_ct_CC='gcc'  
am__EXEEXT_FALSE=''  
am__EXEEXT_TRUE=''  
am__fastdepCCAS_FALSE=''  
am__fastdepCCAS_TRUE=''  
am__fastdepCC_FALSE=''  
am__fastdepCC_TRUE=''  
am__include='include'  
am__isrc=''  
am__leading_dot='.'  
am__nodep='_no'  
am__quote=''  
am__tar='$${TAR-tar} chof - "$$tardir"'  
am__untar='$${TAR-tar} xf -'  
bindir='${exec_prefix}/bin'  
build='i686-pc-linux-gnu'  
build_alias=''  
build_cpu='i686'  
build_os='linux-gnu'  
build_vendor='pc'htmldir='${docdir}'  
includedir='${prefix}/include'  
infodir='${datarootdir}/info'  
install_sh='${SHELL} /home/mike/cpuminer-2.4.2/install-sh'  
libdir='${exec_prefix}/lib'  
libexecdir='${exec_prefix}/libexec'  
localedir='${datarootdir}/locale'  
localstatedir='${prefix}/var'  
mandir='${datarootdir}/man'  
mkdir_p='$(MKDIR_P)'  
oldincludedir='/usr/include'  
pdfdir='${docdir}'  
sbindir='${exec_prefix}/sbin'  
sharedstatedir='${prefix}/com'  
sysconfdir='${prefix}/etc'  
target='i686-pc-linux-gnu'  
target_alias=''  
target_cpu='i686'  
target_os='linux-gnu'  
target_vendor='pc'  

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

/* confdefs.h */  
#define PACKAGE_NAME "cpuminer"  
#define PACKAGE_TARNAME "cpuminer"  
#define PACKAGE_VERSION "2.4.2"  
#define PACKAGE_STRING "cpuminer 2.4.2"  
#define PACKAGE_BUGREPORT ""  
#define PACKAGE_URL ""  
#define PACKAGE "cpuminer"  
#define VERSION "2.4.2"  

configure: exit 77  

Bạn có chắc chắn sở hữu thư mục cpuminer-2.4.2?
ubfan1

Hãy thử lệnh trong dấu ngoặc kép để tách biệt các vấn đề về quyền --- "echo" void main () {printf (\ "hello world \ n \");} "| gcc -xc - -o / tmp / hello; / tmp / hello "... một khi bạn thực hiện nó, bạn sẽ thấy" hello world "được in trên bảng điều khiển
Arul Selvan

Tôi đã sử dụng git để lấy các tập tin và thư mục đã được tạo, tôi không sử dụng superuser với git, chỉ git, thư mục đã được tạo trong thư mục chính của tôi vì vậy tôi nghĩ rằng tôi sở hữu thư mục đó.
Mike O

có sau khi tôi thực hiện echo "void main () {printf (\" hello world \ n \ ");}" | gcc -xc - -o / tmp / hello; / tmp / xin chào tôi nhận được hello world
Mike O

kiểm tra quyền trên thư mục và nó là của tôi .....
Mike O

Câu trả lời:


24

Tôi đoán là bạn đã cài đặt trình biên dịch C cơ bản, nhưng không phải là các tiêu đề cho thư viện chuẩn. Thử:

sudo apt install libc6-dev

[Chỉnh sửa: điều này tạo ra các triệu chứng tương tự, nhưng không phải là trường hợp ở đây. Các câu trả lời CFLAGS có vẻ đúng.]


libc6-dev đã là phiên bản mới nhất.
Mike O

Trong trường hợp đó, hãy xem tệp config.log, trong đó sẽ có thông tin về những gì đã sai.
Colin Watson

đầu ra của config.log nằm ở đầu trong bài gốc
Mike O

xấu của tôi, nghĩ rằng tôi đã dán config.log ban đầu, được thêm vào bây giờ .......
Mike O

19

Từ config.log:

configure:3478: gcc -03   conftest.c  >&5  
gcc: error: unrecognized command line option '-03'  

Tùy chọn là -O3với chữ cái O, không phải số 0(không). Vì vậy, bạn nên chạy, như được đưa ra trong README:

./configure CFLAGS="-O3"

4

Có vẻ như CFLAGS của bạn có số 0 thay vì vốn O. Điều đó không hợp lệ và khiến quá trình biên dịch thất bại. Bạn có thể sửa nó, nhưng thực sự, hãy tìm phiên bản mới hơn của gói đã được sửa.


đã thử phiên bản mới hơn trước và nó đã thất bại vì vậy tôi đã gỡ bỏ nó và thử phiên bản này và nó đã thất bại vì vậy tôi nghĩ rằng có một số vấn đề khác. cảm ơn vì đã sửa chữa
Mike O

3

Tôi đã gặp vấn đề chính xác tương tự khi cố gắng cài đặt tivodecode trên bản dựng cơ sở của Linux Mint 17.3. Tôi đã thử:

./configure DFLAGS="-O3"

lệnh nhưng không có hiệu lực. Vì vậy, tôi đã cố gắng:

sudo apt install libc6-dev

để cài đặt các tiêu đề C mới nhất. Tôi đã thử lại ./configurelệnh mà không có biến và tất cả đều ổn. Các lệnh makemake installcũng đã hoàn thành thành công. Đề nghị của tôi là đảm bảo các tiêu đề C mới nhất được cài đặt và sau đó chạy ./configurelệnh của bạn .


-1

Tôi đã từng gặp vấn đề tương tự.

Tôi đã giải quyết nó bằng cách gõ các lệnh sau vào một thiết bị đầu cuối:

sudo apt-get install --reinstall build-Essential

sudo apt-get install - cài đặt gcc

sudo dpkg-cấu hình lại bản dựng

sudo dpkg-cấu hình lại gcc

Sau khi tôi không có vấn đề.


Bạn có chắc đó là vấn đề tương tự? Điều kỳ lạ là một vấn đề đến từ tham số không chính xác (-03 intead của -O3, trong trường hợp này) có thể được giải quyết bằng cách cài đặt lại / cấu hình lại.
Marc Vanhoomissen

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.