• linux编译配置报错:configure: error: C compiler cannot create executables


      编译配置源码时提示:

    [wlf@wlf185 otp_src_21.3]$ ./configure --prefix=/home/wlf/erlang
    Ignoring the --cache-file argument since it can cause the system to be erroneously configured
    Disabling caching
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking for gcc... gcc
    checking whether the C compiler works... no
    configure: error: in `/home/wlf/otp_src_21.3':
    configure: error: C compiler cannot create executables
    See `config.log' for more details

      看下config.log:

    configure:2576: $? = 0
    configure:2565: gcc -v >&5
    Using built-in specs.
    COLLECT_GCC=gcc
    COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
    Target: x86_64-redhat-linux
    Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
    Thread model: posix
    gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
    configure:2576: $? = 0
    configure:2565: gcc -V >&5
    gcc: error: unrecognized command line option '-V'
    gcc: fatal error: no input files
    compilation terminated.
    configure:2576: $? = 4
    configure:2565: gcc -qversion >&5
    gcc: error: unrecognized command line option '-qversion'
    gcc: fatal error: no input files
    compilation terminated.
    configure:2576: $? = 4
    configure:2596: checking whether the C compiler works
    configure:2618: gcc    conftest.c  >&5
    collect2: fatal error: cannot find 'ld'
    compilation terminated.
    configure:2622: $? = 1
    configure:2660: result: no
    configure: failed program was:
    | /* confdefs.h */
    | #define PACKAGE_NAME ""
    | #define PACKAGE_TARNAME ""
    | #define PACKAGE_VERSION ""
    | #define PACKAGE_STRING ""
    | #define PACKAGE_BUGREPORT ""
    | #define PACKAGE_URL ""
    | /* end confdefs.h.  */
    |
    | int
    | main ()
    | {
    |
    |   ;
    |   return 0;
    | }
    configure:2665: error: in `/home/wlf/otp_src_21.3':
    configure:2667: error: C compiler cannot create executables
    See `config.log' for more details

      提示找不到ld,我们确认下:

    [wlf@wlf185 otp_src_21.3]$ which ld
    /usr/bin/which: no ld in (/usr/local/mongodb/bin:/opt/jdk/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/wlf/.local/bin:/home/wlf/bin)

      确实没有ld这个,难道没装ld?那就切换到root装一下吧:

    [root@wlf185 bin]# yum install binutils
    Loaded plugins: product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    Package binutils-2.25.1-22.base.el7.x86_64 already installed and latest version
    Nothing to do
    [root@wlf185 bin]# ld -v
    -bash: ld: command not found

      见了鬼了,ld装着呢,就是没法用。重装吧:

    [root@wlf185 bin]# yum reinstall binutils
    Loaded plugins: product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    Resolving Dependencies
    --> Running transaction check
    ---> Package binutils.x86_64 0:2.25.1-22.base.el7 will be reinstalled
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ========================================================================================================================================================================
     Package                                Arch                                 Version                                            Repository                         Size
    ========================================================================================================================================================================
    Reinstalling:
     binutils                               x86_64                               2.25.1-22.base.el7                                 DVD                               5.4 M
    
    Transaction Summary
    ========================================================================================================================================================================
    Reinstall  1 Package
    
    Total download size: 5.4 M
    Installed size: 22 M
    Is this ok [y/d/N]: y
    Downloading packages:
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      Installing : binutils-2.25.1-22.base.el7.x86_64                                                                                                                   1/1 
    failed to read link /usr/bin/ld: No such file or directory
      Verifying  : binutils-2.25.1-22.base.el7.x86_64                                                                                                                   1/1 
    
    Installed:
      binutils.x86_64 0:2.25.1-22.base.el7                                                                                                                                  
    
    Complete!
    [root@wlf185 bin]# ld -v
    GNU ld version 2.25.1-22.base.el7 

      好了,切回wlf用户重新编译配置。

  • 相关阅读:
    Makefile:(实验)多个目标匹配时会采用最完整匹配的目标
    线程调度为什么比进程调度更少开销?
    关于makefile中自动产生依赖的理解
    makefile中重载与取消隐藏规则示例
    xargs命令的使用过程中一个小领悟:管道与xargs的差别
    CODING 远程办公 开工不断线
    【 ECUG 演讲分享】吴海黎:CODING 微服务架构演进之路
    张海龙:云时代企业研发人员需求与人才培养
    腾讯云大学 x CODING | DevOps 实战:Jenkins Docker
    腾讯云大学 x CODING | 敏捷开发与 DevOps 实战
  • 原文地址:https://www.cnblogs.com/wuxun1997/p/12844460.html
Copyright © 2020-2023  润新知