November 2, 2017
I am using mac OS sierra 10.12.6
Xcode 9.1 Build version 9B55 and i have the latest mac os sdk 10.13
So, I opened up the minisynth project in xcode, and try to build it, but i get a Mach-O linker error.
Undefined symbols for architecture x86_64:
"_verify_noerr", referenced from:
_addParamListener in MiniSynthView.o
-[MiniSynthView addListeners] in MiniSynthView.o
-[MiniSynthView removeListeners] in MiniSynthView.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Can someone help me with this? Thanks in advance!
November 2, 2017
I just wanted to share some things I have found out.
In the new xcode 9, the macros have changed. Here is the explanation, which I have found on stack overflow:
For time immemorial, Mac OS X has defined version of most of these macros without the __ prefix, which could collide with similarly named functions or macros in user code, including new functionality in Boost and the C++ standard library.
macOS High Sierra and iOS 11 will now require that clients move to the new macros as defined above.
If you would like to enable the macros for use within your own project, you can define the __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES macro via an Xcode Build Configuration. See "Add a build configuration (xcconfig) file" in Xcode Help.
So instead of enabling the old macro, I just decided to use the new names and manually changed them.
So verify_noerr becomes __Verify_noErr with 2 underscores at the front.
P.S. These errors were found in /Source/CocoaUI/MiniSynthView.m file
and in the synth book, it is chapter 2.45 where it talks about setting up view event listeners
January 28, 2017
Most Users Ever Online: 36
Currently Browsing this Page:
Guest Posters: 1
Newest Members:Merril Bradshaw, BillPlunkett, Laxmi123, Pajczur, michaelwayneharwood, RickM, rainbow wind, Tekkerue, CRay, clc
Moderators: W Pirkle: 185
Administrators: Tom: 66, JD Young: 80, Will Pirkle: 0, W Pirkle: 185