[6142] missing file?

Questions, problems and discussion about compiling FreeOrion.

Moderator: Oberlus

Message
Author
AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

[6142] missing file?

#1 Post by AndrewW »

Code: Select all

[ 81%] Building CXX object client/human/CMakeFiles/freeorion.dir/chmain.cpp.o
In file included from /home/andrew/freeorion/FreeOrion/client/human/chmain.cpp:6:0:
/home/andrew/freeorion/FreeOrion/GG/GG/Ogre/Plugins/OISInput.h:31:29: fatal error: OIS/OISKeyboard.h: No such file or directory
compilation terminated.
make[2]: *** [client/human/CMakeFiles/freeorion.dir/chmain.cpp.o] Error 1
make[1]: *** [client/human/CMakeFiles/freeorion.dir/all] Error 2
Any ideas where to look?

I should have everything needed, built the GiGi included with FreeOrion.

Building on Gentoo Linux.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12725
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: [6142] missing file?

#2 Post by Geoff the Medio »

Not sure about the missing file, but build the latest SVN, not 6157. You might need to relocate to the new repository URL since it recently changed.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: [6142] missing file?

#3 Post by Dilvish »

you might need to clear out some cmakecache files....
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#4 Post by AndrewW »

Geoff the Medio wrote:Not sure about the missing file, but build the latest SVN, not 6157. You might need to relocate to the new repository URL since it recently changed.
Probably, 6142 is what was pulled in... Will see about getting it to update to a newer one.

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#5 Post by AndrewW »

Dilvish wrote:you might need to clear out some cmakecache files....
Been there, done that...

User avatar
adrian_broher
Programmer
Posts: 1155
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: [6142] missing file?

#6 Post by adrian_broher »

AndrewW wrote:Any ideas where to look?
This file should be provided by the system. Do you have the equivalent of a package installed (I don't know the Gentoo terminology for this) that provides the OIS development files and headers?
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#7 Post by AndrewW »

adrian_broher wrote:
AndrewW wrote:Any ideas where to look?
This file should be provided by the system. Do you have the equivalent of a package installed (I don't know the Gentoo terminology for this) that provides the OIS development files and headers?
Ah ha. Didn't ever have to emerge ois before (might have already been there from something else previously), added that and it looks like it got past that anyways.

Also wiped the FreeOrion stuff away and went with the new repository so compiling 6159 now.

Now I need to update the Gentoo instructions (forum and wiki).

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#8 Post by AndrewW »

Well, almost... (got it to 99%)

Code: Select all

Linking CXX executable ../../freeorion
/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lGiGiOgrePlugin_OIS
collect2: ld returned 1 exit status
make[2]: *** [freeorion] Error 1
make[1]: *** [client/human/CMakeFiles/freeorion.dir/all] Error 2
make: *** [all] Error 2
After that emerging the GiGi in the systems package manager fixed that.

Possibly the GiGi that is included with FreeOrion isn't putting the file there but the systems GiGi is?

So compiled and seems to be working anyways.

User avatar
adrian_broher
Programmer
Posts: 1155
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: [6142] missing file?

#9 Post by adrian_broher »

AndrewW wrote:Possibly the GiGi that is included with FreeOrion isn't putting the file there but the systems GiGi is?
What does this mean?

If you have two different versions of GiGi ('system' and 'freeorion source') please don't mix those. The 'system GiGi' is most likely outdated and shouldn't be used.

Especially the
Possibly the GiGi that is included with FreeOrion isn't putting the file there
part sounds to me like a bug in the installation target.

Could you describe the complete process on how you compile and install freeorion current?
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#10 Post by AndrewW »

adrian_broher wrote:
AndrewW wrote:Possibly the GiGi that is included with FreeOrion isn't putting the file there but the systems GiGi is?
What does this mean?

It couldn't find the file (I did compile the GiGi included with FreeOrion), once I installed the GiGi from the system's package manager it found it.
adrian_broher wrote:If you have two different versions of GiGi ('system' and 'freeorion source') please don't mix those. The 'system GiGi' is most likely outdated and shouldn't be used.
I didn't until it didn't compile with that, added in the systems GiGi (had already compiled the one with FreeOrion) and it got past the error and completed compiling.
adrian_broher wrote:
Possibly the GiGi that is included with FreeOrion isn't putting the file there
part sounds to me like a bug in the installation target.

Could you describe the complete process on how you compile and install freeorion current?
Easy enough see:

http://www.freeorion.org/index.php/User ... B64-bit.5D

Just updated that, though one change was adding in gigi (it wasn't in the list of packages needed till it fixed that last problem). If we get this sorted out to not needing the one from the systems package manager I can update again and remove that.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: [6142] missing file?

#11 Post by Dilvish »

The FO version of GG has a number of tweaks to it, relating to right-clicking certain items, ListBox behavior, etc. So while FO may execute with the standard GG, don't be surprised if you encounter some odd bugs from it.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#12 Post by AndrewW »

Dilvish wrote:The FO version of GG has a number of tweaks to it, relating to right-clicking certain items, ListBox behavior, etc. So while FO may execute with the standard GG, don't be surprised if you encounter some odd bugs from it.
Well, not sure which it is really using since both where installed...

For reference, the system one is: 0.8_pre20130312.

Perhaps the missing file (GiGiOgrePlugin_OIS) exists and the FreeOrion one just doesn't put it in the right place? In which case adding in a link should fix that up.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: [6142] missing file?

#13 Post by Dilvish »

AndrewW wrote:Perhaps the missing file (GiGiOgrePlugin_OIS) exists and the FreeOrion one just doesn't put it in the right place? In which case adding in a link should fix that up.
on my machine that's provided by libGiGiOgrePlugin_OIS.so located in the main FO folder.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
adrian_broher
Programmer
Posts: 1155
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: [6142] missing file?

#14 Post by adrian_broher »

Dilvish wrote:The FO version of GG has a number of tweaks to it, relating to right-clicking certain items, ListBox behavior, etc. So while FO may execute with the standard GG, don't be surprised if you encounter some odd bugs from it.
This. Don't emerge GiGi, use the version from the repository or stuff will break.

As I said before: If the GiGi version in the source code doesn't install the so files properly this is a bug in the build system and should be fixed.

Seeing the installation instructions you posted shows me that you still compile GiGi on it's own. This isn't needed and if it is still done it will break stuff.

The build process should work like this now:

Install the depencencies (minus gigi in your list), after that calling

Code: Select all

cmake . && make
from the project root. After that you need to set up the PluginFolder in the ogre_plugins.cfg properly by calling:

Code: Select all

sed -i 's#PluginFolder=\.#PluginFolder=/usr/lib/OGRE/#' ogre_plugins.cfg
substituting the /usr/lib/OGRE/ with the system directory that contains the OGRE plugins.

If after these steps the exectuable located in the build directory doesn't work consider the build system broken and report a bug.

Everything else like creating symlinks isn't necessary, if it is consider the build system broken and report a bug.

Ideally in the future the whole process should be only

Code: Select all

cmake . && make && make install
but we aren't there yet, especially about the `make install` part.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

AndrewW
Juggernaut
Posts: 791
Joined: Mon Feb 04, 2013 10:15 pm

Re: [6142] missing file?

#15 Post by AndrewW »

adrian_broher wrote:Seeing the installation instructions you posted shows me that you still compile GiGi on it's own. This isn't needed and if it is still done it will break stuff.

Again, it wasn't on the list of packages to install. Was only just added early this morning after it didn't work without it...

Install the depencencies (minus gigi in your list), after that calling

Code: Select all

cmake . && make
from the project root. After that you need to set up the PluginFolder in the ogre_plugins.cfg properly by calling:

Code: Select all

sed -i 's#PluginFolder=\.#PluginFolder=/usr/lib/OGRE/#' ogre_plugins.cfg
substituting the /usr/lib/OGRE/ with the system directory that contains the OGRE plugins.

If after these steps the exectuable located in the build directory doesn't work consider the build system broken and report a bug.

Everything else like creating symlinks isn't necessary, if it is consider the build system broken and report a bug.

Ideally in the future the whole process should be only

Code: Select all

cmake . && make && make install
but we aren't there yet, especially about the `make install` part.
Ok, so no need to go into GG and compile GiGi on its own then?

Ogre still needed? Right now that's brought in on its own when I bring in GiGi so it's not separately on the list. Just want to make sure to add that back on the list.

Will give things a try this way and see what happens. I'll update the instructions if it works ok.

Post Reply