Sửa lỗi react native khi debug thì chạy nhưng khi build release thì lỗi undefined symbols for architecture

Pham Kha
06:43 21-11-2023
2004

Lỗi undefined symbols for architecture arm64 theo mình được biết là do thư viện Flipper không hỗ trợ nên chúng ta cần báo cho ios biết là sẽ không sử dụng nó khi build ra là được.

Sửa được các lỗi

  • undefined symbols for architecture arm64
  • undefined symbols for architecture x86-64
  • undefined symbols: _OBJS_CLASS_$_FlipperClient

Sửa lỗi react native khi debug thì chạy nhưng khi build release thì lỗi undefined symbols for architecture

 

Bước 1: Tạo file react-native.config.js ở thư mục gốc của dự án react native

//file react-native.config.js
module.exports = {
  dependencies: {
    ...(process.env.NO_FLIPPER
      ? { 'react-native-flipper': { platforms: { ios: null } } }
      : {}),
  },
};

Bước 2: Thêm thuộc tính NO_FLIPPER = 1 vào file .env

//.env
NO_FLIPPER=1

Bước 3: Chạy lệnh "PRODUCTION=1 arch -x86_64 pod install" để báo cho xcode biết là loại bỏ kiến trúc x86_64 pod install để cập nhật lại như viện

cd ios
PRODUCTION=1 arch -x86_64 pod install

Như vậy sau khi thực hiện nhựng bước trên bạn sẽ không gập lỗi khi build release trên ios nữa. Nhưng khi muốn chạy debug thì bạn phải làm ngược lại các bước trên nhé. Khi đó PRODUCTION=0 arch -x86_64 pod install NO_FLIPPER = 0.

Bài viết mới