macOS 上 React Native 的 Pod 安装问题
Posted
技术标签:
【中文标题】macOS 上 React Native 的 Pod 安装问题【英文标题】:Pod install problem with React Native on macOS 【发布时间】:2019-11-16 03:15:06 【问题描述】:我正在运行最新版本的 react native,每当我通过终端创建新项目时,我都会收到一条消息,说我必须通过转到 ios 文件夹手动安装 pod。当我这样做时,吊舱安装失败。我已经尝试运行“sudo gem install”并删除并重新安装 react native。
这是我现在尝试运行 rbenv 时遇到的错误:
BUILD FAILED (OS X 10.15.1 using ruby-build 20191111)
Inspect or clean up the working tree at /var/folders/rh/5076xlbn4g9gzkvwk1wkjg400000gn/T/ruby-build.20191120204401.79920.wx7t9i
Results logged to /var/folders/rh/5076xlbn4g9gzkvwk1wkjg400000gn/T/ruby-build.20191120204401.79920.log
Last 10 log lines:
*** building:
make depend
making all in crypto...
/usr/bin/perl ../util/mkbuildinf.pl "clang -I. -I.. -I../include -fPIC -fno-common -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -arch x86_64 -O3 -DL_ENDIAN -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM" "darwin64-x86_64-cc" >buildinf.h
clang -I. -I.. -I../include -fPIC -fno-common -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -arch x86_64 -O3 -DL_ENDIAN -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -I/Users/User1/.rbenv/versions/2.2.4/include -c -o cryptlib.o cryptlib.c
/bin/sh: User1/.rbenv/versions/2.2.4/include: No such file or directory
make[1]: *** [cryptlib.o] Error 127
make: *** [build_crypto] Error 1
clang: error: no input files
【问题讨论】:
你能检查一下是否有Podfile
吗?你能在重新安装之前删除Podfile.lock
吗?
有 Podfile 但没有 Podfile.lock
我明白了。你能在做pod install
之前做一个pod repo update
和rm -rf node_modules && npm install
吗?
您的 pod 安装和下载似乎被阻止了。你能看看这个github comment吗?
sudo rm -rf ~/.cocoapods
和另一个pod install
怎么样?在SO post 中还提出了其他建议。看看吧。
【参考方案1】:
我已经遇到过这个问题。我不知道为什么,但是 mac 上的默认 Ruby 版本会导致问题。
为了克服这个问题,我使用了Rbenv,它是 Ruby 版本管理器。
这里是如何安装它
brew install rbenv
在您的 bash_profile 或 bashrc 或 zshrc 中放置此代码,不要忘记 source 您的文件
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
使用与实际版本不同的 rbenv 安装 Ruby 版本,以确保 rbenv 正常工作。
rbenv install 2.5.3
rbenv global 2.5.3
rbenv rehash
ruby -v //ensure that you're now using 2.5.3 version
gem install cocoapods
删除您的 Pods/ Podfile.lock 并尝试再次运行 pod install
。它应该可以解决问题。正如我所说,它对我和我的项目团队成员都有效。您必须记住不要使用 sudo。
保持联系,如果您遇到问题,我可以提供说明
【讨论】:
运行rubyv install 2.5.3
时收到如下错误:BUILD FAILED (OS X 10.15.1 using ruby-build 20191111) Inspect or clean up the working tree at /var/folders/rh/5076xlbn4g9gzkvwk1wkjg400000gn/T/ruby-build.20191120062653.49305.6q008u Results logged to /var/folders/rh/5076xlbn4g9gzkvwk1wkjg400000gn/T/ruby-build.20191120062653.49305.log
你的意思是你连rbenv都安装不了?
我可以成功安装rbenv但是无法成功运行命令rbenv install 2.5.3
也许这个SO Post可以帮助你
似乎没有帮助。以上是关于macOS 上 React Native 的 Pod 安装问题的主要内容,如果未能解决你的问题,请参考以下文章
zsh:找不到命令:react-native - MacOS
react-native run-android 失败 MacOS
React Native macOS 菜单栏应用是不是可行?
跨平台战役升级:React Native宣布支持MacOS和Windows平台