美文网首页
安装CocoaPods遇到错误Failed to build g

安装CocoaPods遇到错误Failed to build g

作者: 范小兵 | 来源:发表于2022-02-17 15:54 被阅读0次

    正常安装CocoaPods只需要在终端输入

    sudo gem install cocoapods
    

    但是不巧你遇到了错误

    Building native extensions. This could take a while...
    ERROR:  Error installing cocoapods:
        ERROR: Failed to build gem native extension.
    
        current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/ext/ffi_c
    /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20220121-65017-1lsof6r.rb extconf.rb
    *** extconf.rb failed ***
    Could not create Makefile due to some reason, probably lack of necessary
    libraries and/or headers.  Check the mkmf.log file for more details.  You may
    need configuration options.
    
    Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/$(RUBY_BASE_NAME)
        --with-ffi_c-dir
        --without-ffi_c-dir
        --with-ffi_c-include
        --without-ffi_c-include=${ffi_c-dir}/include
        --with-ffi_c-lib
        --without-ffi_c-lib=${ffi_c-dir}/lib
        --enable-system-libffi
        --disable-system-libffi
        --with-libffi-config
        --without-libffi-config
        --with-pkg-config
        --without-pkg-config
    /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:467:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
    You have to install development tools first.
        from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:546:in `block in try_link0'
        from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/tmpdir.rb:93:in `mktmpdir'
        from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:543:in `try_link0'
        from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:570:in `try_link'
        from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:672:in `try_ldflags'
        from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1832:in `pkg_config'
        from extconf.rb:9:in `system_libffi_usable?'
        from extconf.rb:42:in `<main>'
    
    To see why this extension failed to compile, please check the mkmf.log which can be found here:
    
      /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-20/2.6.0/ffi-1.15.5/mkmf.log
    
    extconf failed, exit code 1
    
    Gem files will remain installed in /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5 for inspection.
    Results logged to /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-20/2.6.0/ffi-1.15.5/gem_make.out
    

    接下来你要做的就是

    • 安装RVM
    curl -L https://get.rvm.io | bash -s stable
    
    • 安装Ruby 2.6
    rvm install ruby-2.6
    

    如果你是M1芯片的电脑,会出现rvm command not found,此时你退出终端程序,在Finder里找到终端,右键选择显示简介,勾选使用Rosetta打开重新执行这个命令就可以了

    如果遇到了下面的错误

    Error running 'requirements_osx_brew_libs_install autoconf automake libtool pkg-config coreutils libyaml libksba readline zlib openssl@1.1',
    please read /Users/fandong/.rvm/log/1642813404_ruby-2.6.6/package_install_autoconf_automake_libtool_pkg-config_coreutils_libyaml_libksba_readline_zlib_openssl@1.1.log
    Requirements installation failed with status: 1.
    

    我们挨个安装这些依赖

    brew install autoconf
    

    但是你可能会遇到

    Warning: No available formula with the name "automake".
    ==> Searching for similarly named formulae...
    Error: No similarly named formulae found.
    ==> Searching for a previously deleted formula (in the last month)...
    Error: No previously deleted formula found.
    ==> Searching taps on GitHub...
    Error: No formulae found in taps.
    

    你需要

    rm -rf /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core;
    brew update
    

    再来执行

    brew install autoconf
    brew install automake
    brew install libtool
    brew install pkg-config
    brew install coreutils
    brew install libyaml
    brew install libksba
    brew install readline
    brew install zlib
    brew install openssl
    

    再来执行

    rvm install ruby-2.6
    

    然后再来执行刚开始的

    sudo gem install cocoapods
    

    相关文章

      网友评论

          本文标题:安装CocoaPods遇到错误Failed to build g

          本文链接:https://www.haomeiwen.com/subject/xwrslrtx.html