Problems compiling freeorion on FreeBSD
Moderator: Oberlus
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Problems compiling freeorion on FreeBSD 7
Perhaps you should ask about this on the Ogre forums?
Re: Problems compiling freeorion on FreeBSD 7
I've committed now r3007 of freeorion and r729 of gigi to the FreeBSD ports tree:
http://www.freshports.org/games/freeorion/
http://www.freebsd.org/cgi/cvsweb.cgi/p ... freeorion/
http://www.freshports.org/x11-toolkits/gigi/
http://www.freebsd.org/cgi/cvsweb.cgi/p ... kits/gigi/
So it is now available for FreeBSD either to compile it using the ports collection or just add the precompiled package using pkg_add -r freeorion.
http://www.freshports.org/games/freeorion/
http://www.freebsd.org/cgi/cvsweb.cgi/p ... freeorion/
http://www.freshports.org/x11-toolkits/gigi/
http://www.freebsd.org/cgi/cvsweb.cgi/p ... kits/gigi/
So it is now available for FreeBSD either to compile it using the ports collection or just add the precompiled package using pkg_add -r freeorion.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Problems compiling freeorion on FreeBSD 7
Was there anything in particular you had to do to get it working? The ogre forum thread doesn't reveal much, and others might find it useful to know later...
Re: Problems compiling freeorion on FreeBSD 7
The problem with ogre is still existing. I can just hope that it works on systems with hardware 3D acceleration. Software rendering just does not work but this is all I can test.
Re: Problems compiling freeorion on FreeBSD 7
It compiles and doesn't run because of missing ogre_plugins.cfg. I found it in the archive and put it in ~/.freeorion (fixed the path to OGRE plugins to /usr/local/lib/OGRE and commented Plugin=Plugin_CgProgramManager). And it looked like it will work until it stopped here :
Which port should install that file , FreeOrion itself or GiGiOgre ?$:> freeorion
Plugin=Plugin_CgProgramManagerPlugin=Plugin_CgProgramManagerfcntl: Device not configured
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-2 tab_max=0 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=13 scroll_min=0 scroll_max=13)
GG SIGNAL : Scroll::ScrolledSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
GG SIGNAL : Scroll::ScrolledAndStoppedSignal(tab_min=-1 tab_max=1 scroll_min=-1 scroll_max=0)
main() caught exception(std::exception): OGRE EXCEPTION(7:InternalErrorException): Could not load dynamic library libGiGiOgrePlugin_OIS.so. System Error: Shared object "libGiGiOgrePlugin_OIS.so" not found, required by "freeorion" in DynLib::load at OgreDynLib.cpp (line 81)
Re: Problems compiling freeorion on FreeBSD 7
libGiGiOgrePlugin_OIS.so is part of gigi.
Re: Problems compiling freeorion on FreeBSD 7
So probably the GiGi port is not installing everything
And what about Plugin_CgProgramManagerPlugin.so, ca Freeorion work without it because I think there is no Cg for FreeBSD ?
And what about Plugin_CgProgramManagerPlugin.so, ca Freeorion work without it because I think there is no Cg for FreeBSD ?
Re: Problems compiling freeorion on FreeBSD 7
The game is running as I copied libGiGiOgrePlugin_OIS.so from GiGi build dir to /usr/local/lib by hand. But when I alt+tab and the mouse doubles itself until I click on 'options'. Then there is 1 cursor again.
Re: Problems compiling freeorion on FreeBSD 7
--tech-demo gives me this . Is it because the missing Cg plugin ?
main() caught exception(std::exception): OGRE EXCEPTION(2:InvalidParametersException): Named constants have not been initialised, perhaps a compile error. in GpuProgramParameters::_findNamedConstantDefinition at OgreGpuProgram.cpp (line 1087)
Re: Problems compiling freeorion on FreeBSD 7
The missing OIS-Plugin installation will be fixed - I never came this far because of software rendering stoped it earlier.
I'll fix the ogre_plugins.cfg issue as well - didn't had this in mind because at some point I created one in my home and forgott about this
I'll fix the ogre_plugins.cfg issue as well - didn't had this in mind because at some point I created one in my home and forgott about this
Re: Problems compiling freeorion on FreeBSD 7
One remaining question to the freeorion folks - is it possible to have ogre_plugins.cfg in a global directory? Right now I must have it in the working directory. I would prefer having it in a global directory. Otherwise I must create a wrapper script for freeorion to change the directory into a directory where the file is before starting it... If possible I would like to prevent doing so.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Problems compiling freeorion on FreeBSD 7
Yes, the ogre_plugins.cfg should be possible to relocated by changing the code. It could go in the default directory, where the stringtable and content files (eg. techs.txt) are located, or perhaps in the logs and saves folder, where freeorion.log or ogre.log are located. I suspect the default directory would be most appropriate, unless it's going to need to change at run-time. It doesn't need to change though, as far as I know.OlliL wrote:One remaining question to the freeorion folks - is it possible to have ogre_plugins.cfg in a global directory?
Re: Problems compiling freeorion on FreeBSD 7
Ok, this is what I thought in the meantime too and modified the code.
I've replaced
root = new Root("ogre_plugins.cfg");
by
root = new Root("<LOCALBASE>/share/freeorion/ogre_plugins.cfg");
In client/human/chmain.cpp where <LOCALBASE> is the prefix (mostly /usr/local) where freeorion gets installed too.
I also install then ogre_plugins.cfg in this directory after the own installation of freeorion is done. Hope this works. If so I'll commit it to the FreeBSD ports collection as well.
Of course ogre_plugins.cfg gets adjusted as well (PluginFolder, uncomment the Cg Plugin).
I've replaced
root = new Root("ogre_plugins.cfg");
by
root = new Root("<LOCALBASE>/share/freeorion/ogre_plugins.cfg");
In client/human/chmain.cpp where <LOCALBASE> is the prefix (mostly /usr/local) where freeorion gets installed too.
I also install then ogre_plugins.cfg in this directory after the own installation of freeorion is done. Hope this works. If so I'll commit it to the FreeBSD ports collection as well.
Of course ogre_plugins.cfg gets adjusted as well (PluginFolder, uncomment the Cg Plugin).
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Problems compiling freeorion on FreeBSD 7
I'd rather make that modification in a portable way in the trunk version... edit: will your modification work correctly if someone installs freeorion in a location you're not expecting? /edit
There is also an OISInput.cfg that is currently in the main freeorion directory that might be a problem. I'm not sure where this file's location is specified.
There is also an OISInput.cfg that is currently in the main freeorion directory that might be a problem. I'm not sure where this file's location is specified.