I saw that 3.2 is not yet available for the Mac as an app, so I figured I'd try compiling it - since I'm a real live
software developer (but mostly Java web apps).
I started with the instructions found
here. But neither of the two sets provided seemed exactly right, so I tried a couple of blends between the two.
I'm running OS X 10.7 with XCode 4.6 on a year old MacBook Pro. I also use
MacPorts for all my UNIX libraries and apps. MacPorts has several versions of wxWidgets
available - I tried 2.8, 2.9 and 3.0 (really 2.9) variants.
I used the command "cmake -G Xcode ../" to get things rolling, and that seemed to
work fine. However, when I tried to compile with XCode I get ~200 errors.
I get a big stack of warnings that look like this:
ld: warning: ignoring file /Users/xxx/Documents/git/OpenCPN/build/Debug/libNMEA0183.a, file was built for archive which is not the architecture being linked (i386): /Users/xxx/Documents/git/OpenCPN/build/Debug/libNMEA0183.a
ld: warning: ignoring file /Users/xxx/Documents/git/OpenCPN/build/Debug/libGARMINHOST.a, file was built for archive which is not the architecture being linked (i386): /Users/xxx/Documents/git/OpenCPN/build/Debug/libGARMINHOST.a
ld: warning: ignoring file /opt/local/lib/libgobject-2.0.dylib, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /opt/local/lib/libgobject-2.0.dylib
ld: warning: ignoring file /opt/local/lib/libglib-2.0.dylib, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /opt/local/lib/libglib-2.0.dylib
ld: warning: ignoring file /Users/xxx/Documents/git/OpenCPN/build/Debug/libS57ENC.a, file was built for archive which is not the architecture being linked (i386): /Users/xxx/Documents/git/OpenCPN/build/Debug/libS57ENC.a
And then a big stack of errors that start with:
Undefined symbols for architecture i386:
I believe this is telling me the libraries
OpenCPN needs were compiled with an unexpected target architecture. Unfortunately, I have no idea how to fix this, or how deep this architecture issue goes - do I need to instruct MacPorts to build all its libraries with a certain architecture? If so, how would I do that?
The Lion instructions seem to ignore XCode entirely but rely on a version of
OpenCPN source from someone else's git repository that is about a year old, so I don't think I want to use that.
Any help would be appreciated.
- Jasen.