Compiling instructions no longer valid

Trying to build your own version of Vega Strike and having problems? Unix users, paste your config.log here (stderr output alone is not helpful).

Compiling instructions no longer valid

Postby tiberiousr » Tue Feb 26, 2013 4:12 am

The recent svn changes that deleted Makefile.am, Bootstrap.sh etc ( http://vegastrike.svn.sourceforge.net/v ... w=revision ) mean that it is no longer possible to compile from SVN on linux. Is there a new method or set of isntructions? If so could someone please update the wiki to reflect this.

Thanks.
tiberiousr
Star Pilot
Star Pilot
 
Posts: 6
Topics: 1
Joined: Tue Feb 26, 2013 4:09 am

Share On:

Share on Facebook Facebook Share on Twitter Twitter Share on Digg Digg

Re: Compiling instructions no longer valid

Postby charlieg » Tue Feb 26, 2013 4:20 am

It uses cmake now, I believe.
Free Gamer - free software games compendium and commentary!
FreeGameDev forum - open source game development community
User avatar
charlieg
Elite Mercenary
Elite Mercenary
 
Posts: 1328
Topics: 56
Joined: Thu Mar 27, 2003 4:51 pm
Location: Manchester, UK

Re: Compiling instructions no longer valid

Postby tiberiousr » Tue Feb 26, 2013 4:23 am

For those of us that aren't overly familiar with cmake, what would be the syntax for compiling? I'm guessing we start with the usual ./configure and go from there?

EDIT: So I tried

Code: Select all
./configure
cmake .


which sort of worked until it broke due to not finding boost. I installed libboost-python1.50-dev and we got a little farther before cmake bombed out with the following:
Code: Select all
-- Compiling mesh_tool without OgreMesh support: Ogre not found
Default build type is Release, no cpu opts enabled.
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
GLUT_Xmu_LIBRARY (ADVANCED)
    linked by target "vegaserver" in directory /home/tiberious/build/VegaStrike/vegastrike
    linked by target "vegastrike" in directory /home/tiberious/build/VegaStrike/vegastrike


Ok, what? I could manually remove the old build vegastrike and vegaserver binaries but what I can't do now is run make clean to properly scrub the sources because the makefile.am is no longer available. I'm not an expert in this area but I'm guessing my best option is to just delete vegastrike/ and get a fresh checkout and try again.

EDIT2: Nope, cmake still bombs out with the same error. Although now there is no configure script, and from reading through the output I can see that cmake is attempting to do all the auto-configuring itself. So my question now is, what do I need to do fix this configure error?

EDIT3: Installed libogre-dev my output is now:
Code: Select all
tiberious@raggamuffin:~/build/VegaStrike/vegastrike$ cmake .
-- Boost version: 1.49.0
-- Found the following Boost libraries:
--   python
++ Found System Boost : 104900
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
++ OpenGL found : /usr/lib/x86_64-linux-gnu/libGLU.so;/usr/lib/x86_64-linux-gnu/libGL.so;/usr/lib/x86_64-linux-gnu/libSM.so;/usr/lib/x86_64-linux-gnu/libICE.so;/usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
++ GLUT found : /usr/lib/x86_64-linux-gnu/libglut.so;/usr/lib/x86_64-linux-gnu/libXmu.so;/usr/lib/x86_64-linux-gnu/libXi.so
++ Found OpenAL
++ SDL Found
-- Found Vorbis: /usr/lib/x86_64-linux-gnu/libvorbis.so;/usr/lib/x86_64-linux-gnu/libvorbisfile.so;/usr/lib/x86_64-linux-gnu/libogg.so
-- checking for module 'libavcodec'
--   package 'libavcodec' not found
-- FFMPEG Not Found
-- checking for module 'OGRE>=1.2.0'
--   found OGRE, version 1.7.4
-- Found Ogre: 1.7.4
++ Found Ogre: 1.7.4
-- Found GTK2: /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so;/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so;/usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so;/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so;/usr/lib/x86_64-linux-gnu/libgthread-2.0.so;/usr/lib/x86_64-linux-gnu/libgobject-2.0.so;/usr/lib/x86_64-linux-gnu/libpango-1.0.so;/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so;/usr/lib/x86_64-linux-gnu/libatk-1.0.so
++ Compiling mesh_tool with OgreMesh support
Default build type is Release, no cpu opts enabled.
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
Boost_PYTHON_LIBRARY (ADVANCED)
    linked by target "vegaserver" in directory /home/tiberious/build/VegaStrike/vegastrike
    linked by target "vegastrike" in directory /home/tiberious/build/VegaStrike/vegastrike

-- Configuring incomplete, errors occurred!
tiberiousr
Star Pilot
Star Pilot
 
Posts: 6
Topics: 1
Joined: Tue Feb 26, 2013 4:09 am

Re: Compiling instructions no longer valid

Postby safemode » Tue Feb 26, 2013 6:45 am

Clean repo. Pull in boost . mkdir build in top level vegastrike dir. cd build. Run ccmake .. Tweak any build options. Press g to save. Run make. Done.
Ed Sweetman endorses this message.
safemode
Developer
Developer
 
Posts: 2150
Topics: 84
Joined: Sun Apr 22, 2007 6:17 pm
Location: Pennsylvania

Re: Compiling instructions no longer valid

Postby tiberiousr » Tue Feb 26, 2013 7:00 am

safemode wrote:Clean repo. Pull in boost . mkdir build in top level vegastrike dir. cd build. Run ccmake .. Tweak any build options. Press g to save. Run make. Done.


Which version of boost and where from?
tiberiousr
Star Pilot
Star Pilot
 
Posts: 6
Topics: 1
Joined: Tue Feb 26, 2013 4:09 am

Re: Compiling instructions no longer valid

Postby safemode » Tue Feb 26, 2013 7:06 am

It should be back as an external repo. Just run svn up inside vegastrike and it should pull all avail versions. If not then that will be fixed later today. But from your cmake output, you already have it. So move to next step
Ed Sweetman endorses this message.
safemode
Developer
Developer
 
Posts: 2150
Topics: 84
Joined: Sun Apr 22, 2007 6:17 pm
Location: Pennsylvania

Re: Compiling instructions no longer valid

Postby tiberiousr » Tue Feb 26, 2013 7:12 am

ccmake won't save when I hit g, if I hit c it shows the following:
Code: Select all
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
 Please set them or make sure they are set and tested correctly in the CMake files:
 Boost_PYTHON_LIBRARY (ADVANCED)
     linked by target "vegastrike" in directory /home/tiberious/build/VegaStrike/vegastrike
tiberiousr
Star Pilot
Star Pilot
 
Posts: 6
Topics: 1
Joined: Tue Feb 26, 2013 4:09 am

Re: Compiling instructions no longer valid

Postby safemode » Tue Feb 26, 2013 8:13 am

Either the svn wasn't fully reverted to before I played in trunk or you are not running cmake from inside the "build" dir you have to create yourself

Check that system boost option is not enabled. If so then repo wasn't fully reverted. Will fix later today... You could also co a revision that is prior to my commits to trunk that removed boost there. till i look at repo after work
Ed Sweetman endorses this message.
safemode
Developer
Developer
 
Posts: 2150
Topics: 84
Joined: Sun Apr 22, 2007 6:17 pm
Location: Pennsylvania

Re: Compiling instructions no longer valid

Postby tiberiousr » Tue Feb 26, 2013 8:24 am

Looks like the repo isn't pulling in any versions of boost so I'll leave it for now and run an svn up tomorrow and try again. Thanks for taking the time to look at this.
tiberiousr
Star Pilot
Star Pilot
 
Posts: 6
Topics: 1
Joined: Tue Feb 26, 2013 4:09 am

Re: Compiling instructions no longer valid

Postby klauss » Tue Feb 26, 2013 10:20 am

@safemode: I didn't fully revert. I retained some of your modifications regarding boost and autotools removal.

I think I already reverted the requirement for 1.50, and cmake should require only 1.40 and compatible versions.

@tiberiousr: The problem I see in those logs is ffmpeg. Disable ffmpeg by toggling the appropriate option in ccmake, and try to configure again.

Just in case, remove the cache, by doing "rm CMakeCache.txt" inside the build dir.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
User avatar
klauss
Elite
Elite
 
Posts: 7243
Topics: 55
Joined: Mon Apr 18, 2005 7:40 am
Location: LS87, Buenos Aires, República Argentina

Re: Compiling instructions no longer valid

Postby safemode » Tue Feb 26, 2013 11:11 am

Well if you didn't fully revert trunk, it will be broken since it was system boost only then. It should be reverted to before any of my recent changes. Ideally we would be doing py3 in trunk. Like it should be since 0.6 is where we are heading. People wishing to continue working with 0.5 while they work on getting py3 setup on their dev machines can pull the 0.5 tag.

Eventually I would like trunk/vegastrike and trunk/data to be moved to branch/vs05 and those repos in py3 move to trunk
Ed Sweetman endorses this message.
safemode
Developer
Developer
 
Posts: 2150
Topics: 84
Joined: Sun Apr 22, 2007 6:17 pm
Location: Pennsylvania

Re: Compiling instructions no longer valid

Postby klauss » Tue Feb 26, 2013 11:54 am

But most distros now have boost 1.40 or newer, it should work with system boost. In fact, for packaging, we use system boost in all supported distros.

So really, I don't think boost is the problem. I think it could be a broken cache, or a misconfiguration of sorts, because I've seen that error for broken caches.

Anyway, if system boost isn't found, trunk is set up to use the included boost 1.45, which I think is still there as external (not sure, I think). If not, I could add it again.

PS: Nope, not there. I'll add 1.45 again.

EDIT: Or better yet, 1.53
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
User avatar
klauss
Elite
Elite
 
Posts: 7243
Topics: 55
Joined: Mon Apr 18, 2005 7:40 am
Location: LS87, Buenos Aires, República Argentina

Re: Compiling instructions no longer valid

Postby safemode » Tue Feb 26, 2013 1:11 pm

I'd say cut losses. Let people who need to use 0.5 to get the tagged release. Then merge py3 to trunk
Ed Sweetman endorses this message.
safemode
Developer
Developer
 
Posts: 2150
Topics: 84
Joined: Sun Apr 22, 2007 6:17 pm
Location: Pennsylvania

Re: Compiling instructions no longer valid

Postby klauss » Tue Feb 26, 2013 3:11 pm

safemode wrote:I'd say cut losses. Let people who need to use 0.5 to get the tagged release. Then merge py3 to trunk


Yes, yes, that's the plan, but I'm not in a position to adopt the py3 branch right now.

PS: I just committed what in debian testing is a working internal boost 1.53.0 with explicit py2 requirement. And it fixes those weird SharedPool problems, which were in fact caused by non-member operator== being completely redundant. I still think this is a gcc bug, though. There's no reason to instantiate that operator at the point gcc it says it needs it, and if it is just exploring the possibility of using that operator==, the spec clearly specifies AFAIR that template instantiation errors are to be ignored in such situations.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
User avatar
klauss
Elite
Elite
 
Posts: 7243
Topics: 55
Joined: Mon Apr 18, 2005 7:40 am
Location: LS87, Buenos Aires, República Argentina

Re: Compiling instructions no longer valid

Postby tiberiousr » Wed Feb 27, 2013 3:26 am

Fresh source checkout, and steps (someone should probably update the wiki for this ;) )
Code: Select all
svn co https://vegastrike.svn.sourceforge.net/svnroot/vegastrike/trunk/vegastrike
cd vegastrike; mkdir build; cd build
ccmake ..

As per the previous posts I disabled ffmpeg, internal boost is now selected by default and I changed the install path /opt/vegastrike (it's just something I do with svn/git source projects that need compiling regularly). Hit 'g' to generate makefiles and then
Code: Select all
make


Everything seems to be compiling just fine now. Thanks for the help guys!
tiberiousr
Star Pilot
Star Pilot
 
Posts: 6
Topics: 1
Joined: Tue Feb 26, 2013 4:09 am



Return to Compiling Problems [paste config.log]

Who is online

Users browsing this forum: No registered users and 3 guests

cron