이전에 Poco C++ (내가 좋아하는 방식으로)를 사용하는 간단한 명령 줄 프로그램을 컴파일했습니다. 이 프로그램은 몇 개월 동안 완벽하게 운영되었습니다.Poco C++에서 정의되지 않은 기호
프로그램을 실행할 때 다음 오류가 발생하므로 컴퓨터에서 몇 가지 사항이 변경되어야합니다.
dyld: Symbol not found: __ZN4Poco4Util11Application12handleOptionERKNSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEESA_
Referenced from: /Users/me/bin/sqlmerge
Expected in: /usr/local/opt/poco/lib/libPocoUtil.16.dylib
in /Users/me/bin/sqlmerge
왜 이런 일이 발생하는지 알려주실 수 있습니까? Poco 1.4.6으로 컴파일하고 Poco 1.4.6과 함께 실행했습니다. 이유는 Poco가 컴퓨터에서 사라져서 brew install poco
(저는 분명히 Mac에서 실행 중입니다)으로 다시 설치해야했습니다.
수정 : 원인을 알 수는 없지만 --c++11
옵션을 사용하여 다시 설치하면 문제가 해결됩니다. 예컨대 :
brew install poco --c++11
는 아마도 약간 엉망으로는 C++ 이름은 C++ 11로 C++ 표준의 이전 버전에서 변경?