忽略 ffi-1.13.1,因为它的扩展没有构建。尝试:gem pristine ffi --version 1.13.1
Ignoring ffi-1.13.1 because its extensions are not built. Try: gem pristine ffi --version 1.13.1
当我安装 cocoa pods 时,我收到了这条消息。下载的cocoapods是1.10.1版本。我尝试使用他们提供的命令,但出现了:
忽略 ffi-1.13.1,因为它的扩展没有构建。尝试:gem pristine ffi --version 1.13.1
错误:执行时 gem ... (Gem::FilePermissionError)
您没有 /Library/Ruby/Gems/2.6.0 目录的写入权限。
这是否意味着最新的可用版本是1.13.1,但我因为问题无法使用它?如何解决?
“在尝试使用 pods - matt 之前,您需要安装 rbenv 并控制您的 Ruby”
基本上,您需要按照警告消息中的说明进行操作:通过 运行ning gem pristine ffi --version 1.13.1
在指定版本中安装 Gem“ffi”。但是,通常您没有系统写入权限,无法将 Gem 安装到指定目录。
您可能只使用 sudo
,即 运行 命令 sudo gem pristine ffi --version 1.13.1
并输入密码,但我想通常不推荐这样做,因为它存在安全风险。
我是这样安装的:
gem install ffi --version 1.13.1 --user-install
然后我必须将安装路径添加到我的 PATH
变量中;在我的例子中,我将这一行添加到我的 ~/.zshrc
:
export PATH=$HOME/.gem/ruby/2.6.0/bin:$PATH
我真的不是 Ruby 方面的专家,但这解决了我的问题。
这解决了我的问题
brew install cocoapods
应该已经链接(正如 Raphael Pinel 所指出的)但是如果你想确保 运行
brew link --overwrite cocoapods
在装有 Rosetta 和 运行
的 Mac M1 上启动终端
pod update
在蒙特雷。我这样做了:
pod install --repo-update
.....Ignoring ffi-1.15.3 because its extensions are not built. Try: gem pristine ffi --version 1.15.3
% brew install cocoapods
% brew link --overwrite cocoapods
% brew outdated
% brew upgrade
但是,同样的问题。
% pod install --repo-update
result... Ignoring ffi-1.15.3 because its extensions are not built. Try: gem pristine ffi --version 1.15.3
我没有权限在该目录中安装它。
None 个答案对我有用。所以,我想卸载我在不知不觉中安装的所有版本的 ruby,只保留 Xcode.
安装的版本。
brew uninstall --force ruby
然后,卸载cocoapods
brew uninstall --force cocoapods
我只剩下 XCode 安装的 ruby。我运行:
gem pristine ffi --version 1.15.3
我意识到其他版本已安装在 ~/.local
我删除了整个文件夹,因为它除了旧的 gem
文件夹外什么都没有
rm -rf ~/.local
现在,重新安装 cocoapods:
brew install cocoapods
尝试 运行:
pod install
或
gem -v
你不应该看到这个错误。
当您安装了多个 gem 版本并且路径不正确时,通常会发生这种情况。
P.S 我正在使用 macOS Monterey 12.1
在我的例子中,路径不匹配,这个命令帮助了我:
rvm get stable --auto-dotfiles
还要检查你 .zshrc 文件中的路径顺序
f.e.
# Ruby
export PATH="~/.rvm/gems/ruby-2.6.0/bin:$PATH"
export PATH="/usr/local/opt/ruby/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/ruby/lib"
export CPPFLAGS="-I/usr/local/opt/ruby/include"
export PKG_CONFIG_PATH="/usr/local/opt/ruby/lib/pkgconfig"
# User local
export PATH="/usr/local/bin:$PATH"
我的问题是预安装的 ruby 安装了这些扩展并导致出现错误消息。做如下
查看所有已安装的消息,还应打印 Ignoring ... because its extensions are not built
。直接引用 /usr/bin/gem
,因为您可能通过 brew 安装了 ruby,否则将被调用。
/usr/bin/gem list
然后手动卸载所有提及的默认扩展 ruby。对导致该消息的所有扩展执行此操作。
sudo /usr/bin/gem uninstall ffi
就我而言 (mbpm1 pro),我的其他项目很好,但是我朋友的一些项目(仅 windows)我遇到了一些问题,我修复了通过
arch -x86_64 sudo gem install ffi
flutter clean
安装完一些后别忘了清理gem
flutter pub get
重新得到
- 运行 现在(这些 运行 会自动 运行 pod install )只需点击 main.dart ( vscode )
这对我有用:
sudo gem pristine ffi (don't write a version here, because it will fix the problem of all versions)
那么,
pod install
当我安装 cocoa pods 时,我收到了这条消息。下载的cocoapods是1.10.1版本。我尝试使用他们提供的命令,但出现了:
忽略 ffi-1.13.1,因为它的扩展没有构建。尝试:gem pristine ffi --version 1.13.1 错误:执行时 gem ... (Gem::FilePermissionError) 您没有 /Library/Ruby/Gems/2.6.0 目录的写入权限。
这是否意味着最新的可用版本是1.13.1,但我因为问题无法使用它?如何解决?
“在尝试使用 pods - matt 之前,您需要安装 rbenv 并控制您的 Ruby”
基本上,您需要按照警告消息中的说明进行操作:通过 运行ning gem pristine ffi --version 1.13.1
在指定版本中安装 Gem“ffi”。但是,通常您没有系统写入权限,无法将 Gem 安装到指定目录。
您可能只使用 sudo
,即 运行 命令 sudo gem pristine ffi --version 1.13.1
并输入密码,但我想通常不推荐这样做,因为它存在安全风险。
我是这样安装的:
gem install ffi --version 1.13.1 --user-install
然后我必须将安装路径添加到我的 PATH
变量中;在我的例子中,我将这一行添加到我的 ~/.zshrc
:
export PATH=$HOME/.gem/ruby/2.6.0/bin:$PATH
我真的不是 Ruby 方面的专家,但这解决了我的问题。
这解决了我的问题
brew install cocoapods
应该已经链接(正如 Raphael Pinel 所指出的)但是如果你想确保 运行
brew link --overwrite cocoapods
在装有 Rosetta 和 运行
的 Mac M1 上启动终端pod update
在蒙特雷。我这样做了:
pod install --repo-update
.....Ignoring ffi-1.15.3 because its extensions are not built. Try: gem pristine ffi --version 1.15.3
% brew install cocoapods
% brew link --overwrite cocoapods
% brew outdated
% brew upgrade
但是,同样的问题。
% pod install --repo-update
result... Ignoring ffi-1.15.3 because its extensions are not built. Try: gem pristine ffi --version 1.15.3
我没有权限在该目录中安装它。
None 个答案对我有用。所以,我想卸载我在不知不觉中安装的所有版本的 ruby,只保留 Xcode.
安装的版本。brew uninstall --force ruby
然后,卸载cocoapods
brew uninstall --force cocoapods
我只剩下 XCode 安装的 ruby。我运行:
gem pristine ffi --version 1.15.3
我意识到其他版本已安装在 ~/.local
我删除了整个文件夹,因为它除了旧的 gem
文件夹外什么都没有
rm -rf ~/.local
现在,重新安装 cocoapods:
brew install cocoapods
尝试 运行:
pod install
或
gem -v
你不应该看到这个错误。
当您安装了多个 gem 版本并且路径不正确时,通常会发生这种情况。
P.S 我正在使用 macOS Monterey 12.1
在我的例子中,路径不匹配,这个命令帮助了我:
rvm get stable --auto-dotfiles
还要检查你 .zshrc 文件中的路径顺序
f.e.
# Ruby
export PATH="~/.rvm/gems/ruby-2.6.0/bin:$PATH"
export PATH="/usr/local/opt/ruby/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/ruby/lib"
export CPPFLAGS="-I/usr/local/opt/ruby/include"
export PKG_CONFIG_PATH="/usr/local/opt/ruby/lib/pkgconfig"
# User local
export PATH="/usr/local/bin:$PATH"
我的问题是预安装的 ruby 安装了这些扩展并导致出现错误消息。做如下
查看所有已安装的消息,还应打印 Ignoring ... because its extensions are not built
。直接引用 /usr/bin/gem
,因为您可能通过 brew 安装了 ruby,否则将被调用。
/usr/bin/gem list
然后手动卸载所有提及的默认扩展 ruby。对导致该消息的所有扩展执行此操作。
sudo /usr/bin/gem uninstall ffi
就我而言 (mbpm1 pro),我的其他项目很好,但是我朋友的一些项目(仅 windows)我遇到了一些问题,我修复了通过
arch -x86_64 sudo gem install ffi
flutter clean
安装完一些后别忘了清理gemflutter pub get
重新得到- 运行 现在(这些 运行 会自动 运行 pod install )只需点击 main.dart ( vscode )
这对我有用:
sudo gem pristine ffi (don't write a version here, because it will fix the problem of all versions)
那么,
pod install