Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Tools => Topic started by: Nuke on December 14, 2011, 01:50:35 pm
-
i just got me a better compiler (not express!) and was thinking i would give another go at making pcs2 builds (potentially adding features in the process). i cant seem to find kazan's git server nor can i find any other sources. also i want the most recent sources available, including all the most recent features. im not sure if these have been merged into kazan's codebase or not. can haz?
-
It lives at git://alliance.git.sourceforge.net/gitroot/alliance/PCS2 and as of a few minutes ago it's up to date.
-
resolving dependencies is fun!
dont let em see u cry, that only lets em win
got collodadom to recognize.
despite having both wx and boost in my code dir they dont seem to work. so im gonna assume i need to update those libs to their newest versions and see what happens.
*edit*
think i got boost resolved, my wx is kinda out of date.
*derp*
you have to actually build wx
*wtf*
im getting to that give up phase
-
That's why it's much easier to build on Linux.
-
well im not switching oses just to build it. :P
switching compilers (i have vc6 somewhere, but prefer to use a more modern compiler) is actually a better option for me right now.
i upgraded to vc10 professional and i thought that would be enough to compile it (like i can compile fred now). but i guess not. if you can produce a complete list of dependencies with version numbers maybe i could make it work. right now im just downloading libraries as the compiler produces errors that they are missing, i have no idea what versions the code is actually using.
-
after 3 versions of wx widgets i found that the 2.8.12 msw package to be working. seemed to resolve the issue with wx (i think i forgot to enable GLCANVAS), so now im only getting a few boost related errors. so to spare me further headaches what version of boost should i be using?
-
I'm using boost 1.44.0.
-
k, i was using 1.48.0, so yea that could be an issue :D
*edit*
well that didnt do anything different.
-
:bump: I'd like to try building it under Linux, but there don't appear to be any makefiles in the repository?
-
scons (http://www.scons.org/)
-
Ahh, beautiful, it even has an official package repo.
I got the Collada DOM to compile (version 2.2, because 2.4 is a mess, 2.3 I didn't try) but then got the following error while building PCS2. Is the repo still up to date, should I pass that -fpermissive flag through scons? And is it supposed to work with wxWidgets 2.8.12-release-unicode, or should I build with a different wx?
In file included from debug/model_editor_ctrl.h:5:0,
from debug/main_panel.h:66,
from debug/Main_Panel.cpp:120:
debug/primitive_ctrl.h: In member function 'void _vector_button_ctrl<data_ctrl>::on_click(wxCommandEvent&)':
debug/primitive_ctrl.h:230:19: error: there are no arguments to 'GetEventHandler' that depend on a template parameter, so a declaration of 'GetEventHandler' must be available [-fpermissive]
debug/primitive_ctrl.h:230:19: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
-
Hrmm, I got a few steps further in building PCS2 by adding -fpermissive to the debug CPPFLAGS (the ugly solution, I know), but am now stuck on the '/usr/bin/ld: cannot find -lminizip' error.
I used 'make project=minizip' from the dom directory in the collada DOM, checked that the build was successful (it was, apart from several warnings), then rebuilt the DOM again; I also made sure that I have zlib1g-dev installed. But to no avail: any attempt to build PCS2 still ends with '/usr/bin/ld: cannot find -lminizip'.
I know I'm not the first one to encounter this (see here (http://www.hard-light.net/forums/index.php?topic=69748.msg1381979#msg1381979)), but I am apparently the first for whom the fix doesn't work...
-
The easiest solution is probably to install with prefix=/usr (instead of /usr/local) assuming it supports this. Otherwise, copy, preserving symlinks, /usr/local/lib/libminizip* to /usr/lib.
Colladadom relies on some features removed in the version of boost in Ubuntu 12.04 so it doesn't link for me any more.
-
Guh, you're right, the old DOM 2.2 is incompatible with more recent versions of boost. Can hardly blame them for that... I got DOM 2.3 to compile, but it fails on linking with an "undefined refrence to 'main' " in function `_start', file crt1.o. According to the internets (http://stackoverflow.com/questions/11116399/crt1-o-in-function-start-undefined-reference-to-main-in-linux) I should pass -nostartfiles to the linker, but my Makefile skills aren't nearly advanced enough for that. And DOM 2.4 is just a mess (https://collada.org/public_forum/viewtopic.php?f=12&t=2912), apparently - I'm getting the same errors as in the link.
[rant]I wonder how Collada is gonna remain a viable standard if their API is a mess like this?[/rant]