首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >安装CocoaPods - macOS BigSur时出错

安装CocoaPods - macOS BigSur时出错
EN

Stack Overflow用户
提问于 2020-10-06 17:37:24
回答 11查看 22.7K关注 0票数 17

我正在学习如何编程,我正在尝试安装Cocoapods,但是sudo gem install cocoapods出错了。

我得到的是:

代码语言:javascript
运行
AI代码解释
复制
    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.13.1/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 ./siteconf20201006-615-fryp4a.rb extconf.rb
checking for ffi.h... *** 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:585:in `block in try_compile'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:534:in `with_werror'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in `try_compile'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1109:in `block in have_header'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:959:in `block in checking_for'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in `block (2 levels) in postpone'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in `open'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in `block in postpone'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in `open'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:357:in `postpone'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:958:in `checking_for'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1108:in `have_header'
    from extconf.rb:10: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.13.1/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /Library/Ruby/Gems/2.6.0/gems/ffi-1.13.1 for inspection.
Results logged to /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-20/2.6.0/ffi-1.13.1/gem_make.out

我知道有句话说“你必须先安装开发工具”,一开始是真的。然后我安装了Xcode命令行工具(我必须手动从Apple下载它,因为xcode-select --install行不工作),并再次尝试安装cocoapods。但是,即使在重新启动之后,我也会遇到同样的错误。

它也有日志的路径,它是这样写的:

代码语言:javascript
运行
AI代码解释
复制
package configuration for libffi is not found
"xcrun clang -o conftest -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/universal-darwin20 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/backward -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -g -Os -pipe -DHAVE_GCC_ATOMIC_BUILTINS -DUSE_FFI_CLOSURE_ALLOC conftest.c  -L. -L/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib -L. -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.Internal.sdk/usr/local/lib     -lruby.2.6   "
In file included from conftest.c:1:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/ruby.h:24:10: fatal error: 'ruby/config.h' file not found
#include "ruby/config.h"
         ^~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/ruby.h:24:10: note: did not find header 'config.h' in framework 'ruby' (loaded from '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks')
1 error generated.
checked program was:
/* begin */
1: #include "ruby.h"
2: 
3: int main(int argc, char **argv)
4: {
5:   return 0;
6: }
/* end */

所以我被困住了。我目前正在使用macOS大Sur Beta 9和Xcode 12.0.1 (非beta)。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2020-10-07 12:01:48

嗯,今天我终于成功地安装了Cocoapods,但这是一个奇怪的过程。

当学习时,人们通常告诉你远离贝塔,而当我在稳定的应用商店Xcode版本时,我运行的是Big B9;这可能就是问题所在。我完全卸载了Xcode 12.0.1,然后从Apple Developer Xcode 12.2 beta中下载。然后,我下载并安装了用于12.2 beta版的命令行工具,并在终端…中再次运行cocoapods安装然后瞧!

在安装和运行Xcode beta之后,我能够安装并且现在工作正常。也许当BigSur公之于众的时候,这个问题就会解决?因为并不是每个人都需要或必须运行Xcode beta版本。

票数 3
EN

Stack Overflow用户

发布于 2020-12-26 11:59:26

我也有同样的问题(Catalina10.15.7& Xcode 12.3)。

我使用的是自制而不是gem:

代码语言:javascript
运行
AI代码解释
复制
brew install cocoapods
票数 20
EN

Stack Overflow用户

发布于 2020-12-28 09:54:07

XCode的ruby框架似乎有问题。用最新版本重新安装Xcode.app,运行xcode-select --install--select对我不起作用。

这就是我如何在XCode 12.2和Catalina (10.15.7)中运行它的方式:https://stackoverflow.com/a/65481787/1534182

TL;DR)

代码语言:javascript
运行
AI代码解释
复制
cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby
ln -sf ../../../../Headers/ruby/config.h

cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0
ln -sf universal-darwin20 universal-darwin19

(编辑符号链接中的固定错误)

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64235993

复制
相关文章
Go - 基于 GORM 获取当前请求所执行的 SQL 信息
为了便于精准排查问题,需要将当前的请求信息与当前执行的 SQL 信息设置对应关系记录下来,记录的 SQL 信息包括:
新亮
2021/02/03
2.7K0
Go - 基于 GORM 获取当前请求所执行的 SQL 信息
linux 没有root权限的用户安装GCC[通俗易懂]
在Linux下,如果有root权限的话,使用sudo apt install 就可以很方便的安装软件,而且同时也会帮你把一些依赖文件也给编译安装好。但是如果不是用的自己的机器,一般情况下是没有root 权限的。所以就需要自己动手下载tar文件,解压安装。在安装中遇到的最大的问题是依赖的问题。
全栈程序员站长
2022/09/01
13K0
linux 没有root权限的用户安装GCC[通俗易懂]
改进后的 Google Play 管理中心用户管理: 访问请求、权限组等
用户管理在任何规模的企业中都担任着重要角色,其中的挑战在于如何确保每位团队成员都拥有合适的权限来履行其职责,同时不过度暴露与企业无关的数据。
Android 开发者
2022/03/12
1.7K0
改进后的 Google Play 管理中心用户管理: 访问请求、权限组等
ESXi给用户授权(ESXi新添加用户提示执行操作的权限被拒绝)
ESXi给用户授权 1.在安全和用户里添加root账户以外的账户 image.png 2.登录的时候提示:执行操作的权限被拒绝 image.png 3.解决办法:选择主机->操作->权限->添加用户并指定对应的角色 image.png image.png 4.再次测试已经可以正常管理ESXi了 image.png
donkexu
2021/06/24
8.3K0
ESXi给用户授权(ESXi新添加用户提示执行操作的权限被拒绝)
删除第三方AAR所请求的权限
1.问题:引了第三方的AAR库要求一些权限,但我APP不需要,我想删除掉,怎么办 答:很简单,只要在添加:http://schemas.android.com/tools 这个工具在manifest文件中,然后在相应的权限上增加:tools:node="remove"即可。
老马的编程之旅
2022/06/22
7090
Oracle创建用户并把当前的表视图给予权限
本站文章除注明转载/出处外,均为本站原创,转载前请务必署名,转载请标明出处 最后编辑时间为: 2021/10/28 15:46:00
overme
2022/01/17
1.1K0
Linux查看当前用户及其权限管理[通俗易懂]
在 Linux 系统中,每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,它们共享一些资源和权限,同时也可以拥有私有资源,就跟家的形式差不多,你的兄弟姐妹(不同的用户)属于同一个家(用户组),你们可以共同拥有这个家(共享资源),爸妈对待你们都一样(共享权限),但你偶尔也会写写日记,其他人未经允许不能查看(私有资源和权限)。当然一个用户是可以属于多个用户组的,正如你既属于家庭,又属于学校或公司。
全栈程序员站长
2022/09/02
11.1K0
前端API请求的各种骚操作
API请求的控制一直以来都是前端领域的热点问题,市面上已经有很多优秀的开源项目可供使用。本文本着授人以渔的精神,抛开所有的工具函数,介绍各种场景下如何用最朴素的代码解决实际问题。
Dickensl
2022/06/14
7530
使用Java API操作zookeeper的acl权限
注意的是,exists操作和getAcl操作并不受ACL许可控制,因此任何客户端可以查询节点的状态和节点的ACL。
端碗吹水
2020/09/23
9390
关于解决”要执行请求的操作,WordPress需要访问您网页服务器的权限”
比如我们在VPS主机中创建WordPress站点的时候,会有需要在线安装主题、插件等,但是点击下载安装的时候会有”要执行请求的操作,WordPress需要访问您网页服务器的权限。 请输入您的FTP登录凭据以继续。 如果您忘记了您的登录凭据(如用户名、密码),请联系您的网站托管商。”错误提示。看来是我们的VPS给予站点的权限不够导致的。
十四君
2019/11/25
3K0
给当前用户添加管理员权限
在打开的对话框中输入管理员组“administrators”,并单击“检查名称”按钮,如下图:
wsuo
2020/07/31
3.3K0
给当前用户添加管理员权限
MySQL 创建用户及权限的操作命令
MySQL创建新用户 CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
星哥玩云
2022/08/17
1.9K0
Mysql用户与权限操作
用户是数据库的使用者和管理者。 MySQL通过用户的设置来控制数据库操作人员的访问与操作范围。 服务器中名为mysqI的数据库,用于维护数据库的用户以及权限的控制和管理。 MySQL中的所有用户信息都保存在mysql.user数据表中。
海盗船长
2021/12/07
3.5K0
Mysql用户与权限操作
用户查询操作权限命令
/etc/gshadow 存储当前系统中用户组的密码信息 Tips:原先只有group和passwd两个文件,但后来考虑到安全性问题就又演变出shadow和gshadow两个文件
全栈工程师修炼指南
2022/09/28
3.3K0
用户查询操作权限命令
腾讯云中关于授权子用户QCloudResourceFullAccess权限后使用api接口创建购买cvm没有支付权限的解决办法
最近发现腾讯云中授权子用户权限QCloudResourceFullAccess后子用户无法通过api接口支付cvm的订单, 错误提示 [TencentCloudSDKException] code:UnauthorizedOperation message:由于您没有支付权限,无法完成支付,请开通后再试
开心分享
2020/08/05
2.1K0
腾讯云中关于授权子用户QCloudResourceFullAccess权限后使用api接口创建购买cvm没有支付权限的解决办法
java web 获取到当前用户请求的完整url,包括参数
String url = request.getScheme() + "://" + request.getServerName() +
前Thoughtworks-杨焱
2021/12/08
1.1K0
使用服务账号请求Google Play Developer API
目前的一个需求是:app把购买令牌(purchaseToken)传过来了,服务端需要使用这个purchaseToken去请求Google的接口,以检测app内商品的购买和消费状态
崔哥
2022/09/07
3K0
使用服务账号请求Google Play Developer API
【Android 逆向】Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )
Linux 是基于文件的系统 , 内存 , 设备 , 各种机制等 , 一切皆文件 ;
韩曙亮
2023/03/29
10K0
【Android 逆向】Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )
linux的用户权限
最近一个同事把他的服务器分给我了一块,咿呀,万分激动之下,准备自己要搞一个博客!然而,每次一操作点啥,就给我报“permission deny”
用户3258338
2019/07/19
17.5K0
linux的用户权限
点击加载更多

相似问题

Vue组合api -使用组件道具的全局状态可组合

16

使用SnackBar作为Vue +Vue中的全局组件

24

Vue使用组合api更新数组状态

113

Vue组合API createComponent子组件

10

如何使用带有组合API的vue 2键入提示Vue组件方法

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档