Jump to content

[RESOLVED] OS X (10.8.2) Build Error


Recommended Posts

Not sure whether or not this one is known, but this is the error I started getting a week or so ago. If I omit Atlas when I do update-workspaces, the game builds fine but this is what I get otherwise:

==== Building AtlasUI (release) ====
.
.
.
.
IGUIObject.cpp
Undefined symbols for architecture x86_64:
"wxNavigationEnabled<wxNonOwnedWindow>::RemoveChild(wxWindowBase*)", referenced from:
vtable for ActorEditor in ActorEditor.o
vtable for AnimListEditor in AnimListEditor.o
vtable for PropListEditor in PropListEditor.o
vtable for TexListEditor in TexListEditor.o
vtable for ColourDialog in ColourDialog.o
vtable for AtlasDialog in AtlasDialog.o
vtable for AtlasWindow in AtlasWindow.o
...
"wxNavigationEnabled<wxNonOwnedWindow>::AddChild(wxWindowBase*)", referenced from:
vtable for ActorEditor in ActorEditor.o
vtable for AnimListEditor in AnimListEditor.o
vtable for PropListEditor in PropListEditor.o
vtable for TexListEditor in TexListEditor.o
vtable for ColourDialog in ColourDialog.o
vtable for AtlasDialog in AtlasDialog.o
vtable for AtlasWindow in AtlasWindow.o
...
"wxNavigationEnabled<wxNonOwnedWindow>::SetFocus()", referenced from:
vtable for ActorEditor in ActorEditor.o
vtable for AnimListEditor in AnimListEditor.o
vtable for PropListEditor in PropListEditor.o
vtable for TexListEditor in TexListEditor.o
vtable for ColourDialog in ColourDialog.o
vtable for AtlasDialog in AtlasDialog.o
vtable for AtlasWindow in AtlasWindow.o
...
"wxNavigationEnabled<wxNonOwnedWindow>::AcceptsFocus() const", referenced from:
vtable for ActorEditor in ActorEditor.o
vtable for AnimListEditor in AnimListEditor.o
vtable for PropListEditor in PropListEditor.o
vtable for TexListEditor in TexListEditor.o
vtable for ColourDialog in ColourDialog.o
vtable for AtlasDialog in AtlasDialog.o
vtable for AtlasWindow in AtlasWindow.o
...
"wxNavigationEnabled<wxNonOwnedWindow>::AcceptsFocusRecursively() const", referenced from:
vtable for ActorEditor in ActorEditor.o
vtable for AnimListEditor in AnimListEditor.o
vtable for PropListEditor in PropListEditor.o
vtable for TexListEditor in TexListEditor.o
vtable for ColourDialog in ColourDialog.o
vtable for AtlasDialog in AtlasDialog.o
vtable for AtlasWindow in AtlasWindow.o
...
"wxNavigationEnabled<wxNonOwnedWindow>::AcceptsFocusFromKeyboard() const", referenced from:
vtable for ActorEditor in ActorEditor.o
vtable for AnimListEditor in AnimListEditor.o
vtable for PropListEditor in PropListEditor.o
vtable for TexListEditor in TexListEditor.o
vtable for ColourDialog in ColourDialog.o
vtable for AtlasDialog in AtlasDialog.o
vtable for AtlasWindow in AtlasWindow.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [../../../binaries/system/libAtlasUI.dylib] Error 1
make: *** [AtlasUI] Error 2
make: *** Waiting for unfinished jobs....
IGUIScrollBar.cpp
3 warnings generated.
IGUIScrollBarOwner.cpp

Let me know if you need more info.

Link to post
Share on other sites

Let me know if you need more info.

Assuming you're using MacPorts, can you check which wxWidgets port is installed? "port -v installed wxWidgets-devel" ought to do it. Also make sure you don't have the old wxWidgets 2.8 installed by mistake: "port -v installed wxWidgets". It might be a good idea to update MacPorts and the installed ports as described here - but I can't guarantee that will solve your problem.

Didn't you update Xcode recently?

Last night I got similar build errors on OSX 10.7.5

I also omit atlas when I update workspaces (using --disable-atlas)

I'll try again today and see if it was just an isolated incident or not.

Edit: it happened again and here is the output.

Have you installed anything on the system that might have modified the OpenAL framework? Someone had a similar problem here and the solution was to replace the framework from another source. I'd make a backup first, just in case, but it surely doesn't seem like a 0 A.D. issue.

Link to post
Share on other sites

wxNavigationEnabled was added in version 2.9, according to the docs. A quick search shows that these errors can be caused by an incompatibility between wxWidgets and Xcode's Clang toolchain. Their suggested workaround is to use a different toolchain, such as llvm-gcc. Not a mac user, so that's all I got.

Link to post
Share on other sites

Have you installed anything on the system that might have modified the OpenAL framework? Someone had a similar problem here and the solution was to replace the framework from another source. I'd make a backup first, just in case, but it surely doesn't seem like a 0 A.D. issue.

I have installed Awesomium SDK and just updated to Unity 4, but I hardly think that should mess with OpenAL. The game compiled a week ago ( on Dec 9). I opened the OpenAL.framework directory from my /Library and its there, with the date modified as the December 9 (the day I last compiled). I even opened the executable but in Terminal I get this:


iMac:~ Geek$ /Library/Frameworks/OpenAL.framework/Versions/A/OpenAL ; exit;
Launch of "OpenAL" failed: the PowerPC architecture is no longer supported.
logout
[Process completed]

Link to post
Share on other sites

@ Ben:

wxWidgets-devel @2.9.3_0+sdl (active) platform='darwin 11' archs='x86_64'

Same case with me, the game last compiled on Dec 8th. I updated XCode a few days before that though since I needed the command line tools after I updated to Mountain Lion (10.8).

Link to post
Share on other sites

@ Ben:

wxWidgets-devel @2.9.3_0+sdl (active) platform='darwin 11' archs='x86_64'

Same case with me, the game last compiled on Dec 8th. I updated XCode a few days before that though since I needed the command line tools after I updated to Mountain Lion (10.8).

Try a clean build with this command before building:


export CC=llvm-gcc CXX=llvm-g++

Edit: actually for the clean build I'd suggest ./clean-workspaces.sh first, then update-workspaces.sh, etc. Maybe not required but I like to clean everything when changing the compiler.

Link to post
Share on other sites

I have installed Awesomium SDK and just updated to Unity 4, but I hardly think that should mess with OpenAL. The game compiled a week ago ( on Dec 9). I opened the OpenAL.framework directory from my /Library and its there, with the date modified as the December 9 (the day I last compiled).

Something messed with it, if it was modified :) It looks like Awesomium is 32-bit only in OS X, so if it did alter any system files, that would potentially cause problems building a 64-bit binary. Anyway it's very naughty behavior, there's no excuse for modifying those files (unless an OS X update is responsible).

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...