리액트네이티브를 사용하면서 잘되던 빌드가 되지 않을때마다 식은땀이 난다..🥹
그래도 이번에는 무엇이 문제인지 명확하게 보이는 Flipper..! 덕분에 해결방법을 조금 더 쉽게 찾을 수 있었다.
iOS폴더에서 Podfile을 열고,
#:flipper_configuration => Flipper_config,
줄을 비활성화를 해주면 된다고 하지만 이 방법은
Flipper를 사용하는 나에겐 일시적인 해결방법일 뿐이였다.
RN에 입문한지 반년도 안되어 모르는게 너무나 많은 내가 할 수 있는건 검색뿐..!
또 멋도 부리고 싶어서 console창에서 명령어로 해결해보고 싶었다🤪
그렇게 열심히 검색을 해서 찾아냈다.
if ! grep -q "#include <functional>" ./ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h;
then
chmod 755 ./ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h && sed -i '' 's|#include <string>|#include <functional>\n#include <string>|' ./ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h
fi
명령어를 하나씩 해석해보자.
if ! grep -q "#include <functional>" ./ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h; then
- `grep -q` 명령어는 파일에서 특정 문자열을 검색하는 대신에, `-q` 검색 결과를 출력하지 않고, 검색이 성공했는지 여부만 반환
- `/ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h`파일에서 #include <functional> 문자열을 검색
- `!`는 not을 의미 하므로, #include <functional> 문자열을 찾을 수 없을 때 조건이 참이 된다.
chmod 755 ./ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h &&
- `chomd 755`는 파일의 권한을 변경하는 명령어로 해당 파일에 실행 권한을 부여
- `&&`는 앞선 명령어라 성공적릉로 실행된 경우에만 다음 명령어를 실행
sed -i '' 's|#include <string>|#include <functional>\n#include <string>|' ./ios/Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h
- `sed`는 파일 내에서 텍스트를 검색하고 변경하는데 사용되는 유틸리티
- `-i` 옵션은 파일을 직접 수정한다는 것을 의미하고, ''는 백업 파일을 만들지 않기 위해 사용
- `'s|#include <string>|#include <functional>\n#include <string>|'`는 해당 파일에서 `#include <string>` 문자열을 찾아서 `#include <functional>` 과 `\n#include <string>`으로 변경합니다.
fi
- if문 종료
결론 적으로 Flipper에 해당하는 파일을 업그레이드 해주는 거 같다..! 해결해도 어려운 RN의 세계..
참고1
https://github.com/facebook/react-native/issues/43335
[Fixed & Shipped in latest releases] Upgrading Xcode to 15.3 results in build error - `Called object type 'facebook::flipper::So
ImportantThe latest official update from the React Native Team is available here Description Called object type 'facebook::flipper::SocketCertificateProvider' (aka 'int') is not a function or funct...
github.com
Build Error on Xcode 15.3: "Called object type 'facebook::flipper::SocketCertificateProvider' is not a function or function poin
I recently updated my Xcode to version 15.3 and encountered an issue while trying to build my React Native app on the simulator. The error message I'm receiving is: "Called object type 'facebo...
stackoverflow.com
'React Native' 카테고리의 다른 글
[RN] react-native 키보드 가림현상 - iOS (0) | 2024.05.29 |
---|---|
[RN] react-native useRef 사용방법 (0) | 2024.05.27 |
[RN] react-native Linking 전화걸기, 문자, 메일보내기 (0) | 2024.05.27 |
[RN] react-native ScrollView (0) | 2024.05.27 |
[RN] react-native, No bundle URL present. error (iOS) (0) | 2024.05.21 |