react nativeでLinker command failed with exit code 1が出た時

  • 2
    Like
  • 0
    Comment

react nativeでXcodeから端末にビルドしようとした時
Linker command failed with exit code 1
が出た。コマンドライン上では
:CFBundleIdentifier", Does Not Exist
と表示され、BUILD FAILEDとなっている。

SwiftでApp開発をされていた方なら簡単に対処できたのだろうが、私はCordovaとreact nativeしか経験がなかったので少し苦戦した。
ぐぐったら、
http://qiita.com/Horie1024/items/b31316b62949455ff8d5#_reference-79259bc121e52df6fc50
ここでMac OS, Xcodeのバージョンを最新にすると良いとあったので、Mac OSを最新にしたが結果は変わらず、、

原因はcheck boxのpackageをインストールして削除したからだ。と推測していたので、package.jsonから削除し、
rm -rf node_modules && yarn
を実行。だが結果変わらず。

ググっていくと
https://github.com/mapbox/react-native-mapbox-gl/issues/297
このページで、XcodeのBuild Phases以下のLink Binary With Librariesでpackageを読み込んでいることがわかった。
ここで私が追加した、check boxのpackageを削除したらビルド成功。
コマンドラインで出ていた
:CFBundleIdentifier", Does Not Exist
も消え、BUILD SUCCESEDになった。

むやみに、やたらに一般のpackageを追加して開発するのは控えよう