I previously compiled a simple command line program that made use of Poco C++ (which I love, by the way). The program ran perfectly for several months.
A few things must have changed on my computer, because now when I run the program, I receive the following error.
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
Can someone tell me why this is occurring? I compiled with Poco 1.4.6 and ran with Poco 1.4.6, even though for some reason Poco was missing from my computer and I had to reinstall with brew install poco
(I'm obviously running this on a Mac).
EDIT: I'm not sure of the cause, but reinstalling with the --c++11
option turned on fixes the issue. E.g.:
brew install poco --c++11
Perhaps the C++ name mangling slightly changes from older versions of the C++ standard to C++11?