Flutter 에서 bitsdojo_window 빌드 오류 해결 방법

반응형

오랜만에 Flutter를 업데이트 했더니 다음과 같은 오류가 발생합니다.

검색해보니 Flutter 2.8 부터 발생하기 시작한 것 같습니다.

증상

다음과 같은 에러가 발생하면서 빌드에 실패합니다.

Launching lib/main.dart on macOS in debug mode...  
\--- xcodebuild: WARNING: Using the first of multiple matching destinations:  
{ platform:macOS, arch:x86\_64, id:6E3FAE97-FFAB-5FD7-943C-87D3A29F8C7E }  
{ platform:macOS, name:Any Mac }  
Undefined symbols for architecture x86\_64:  
  "\_\_\_gxx\_personality\_v0", referenced from:  
      getAppWindow() in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      \_\_\_\_Z10moveWindowP8NSWindow\_block\_invoke in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      setSize(NSWindow\*, int, int) in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      getScreenInfoForWindow(NSWindow\*, \_BDWScreenInfo\*) in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      setPositionForWindow(NSWindow\*, \_BDWOffset\*) in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      \_\_\_\_Z20setPositionForWindowP8NSWindowP10\_BDWOffset\_block\_invoke in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      setRectForWindow(NSWindow\*, \_BDWRect\*) in bitsdojo\_window\_macos(bitsdojo\_window.o)  
      ...  
ld: symbol(s) not found for architecture x86\_64  
clang: error: linker command failed with exit code 1 (use -v to see invocation)  
note: Using new build system  
note: Planning  
note: Build preparation complete  
note: Building targets in dependency order  
\*\* BUILD FAILED \*\*  

Building macOS application...                                             
Exception: Build process failed

 

해결 방법

XCode를 실행합니다.

$ open macos/Runner.xcworkspace/

XCode가 실행되면 Build Phases를 찾아서 이동합니다.

그 다음 Link Binary With Libraries (1 items)libc++.tbd 라이브러리를 추가합니다.

이제 다시 빌드해보면 에러가 발생하지 않습니다.

 

반응형