Page 10 of 20

Posted: Sun Feb 13, 2005 7:29 pm
by Geoff the Medio
trace wrote:A Question to the programmers:

What libraries r most needed to code at freeorion
and which r less needed.
Which r for what needed.
And which code needs not that much libs to code,
so u have not to learn so much about your lib.

I think about coding at freeorion, but now I want to code with qt,
cause I bought a book about qt.
You're more likely to get an answer to that if you ask using full, coherent sentences and fully typed-out words.

As far as I know, all of the libraries listed as required on the compile wiki page are in fact required. However you don't really need learn or understand most (or any) of them to do programming for FO... most of the learning I've had to do was how to use internal game code functions and structures, not external library interfaces. I was doing mostly high level stuff or math-based calculations though; the more low-level your coding, the more likely you'll need to learn an external library to do it.

Posted: Mon Feb 14, 2005 8:37 am
by noelte
@trace Do you try to exclude some libs? If you do not use fo with it's current libs, imo you will wast your time, because qt won't make it into fo (as it is now). And so, i guess, noone is going to give you a hand, because there are other things to do.

Posted: Sat Feb 19, 2005 11:00 am
by trace
I didnt proposed to use qt in freeorion, but I have no Problem if qt will be used in freeorion.

It is just a question what libs I do have to learn. I just want to know what I could program at freeorion. Maybe I will program months later at freeorion. I dont know.

Resolutions!

Posted: Sat May 07, 2005 8:10 pm
by solrac776
Hi

I compiled from CVS and got FO to work, and I can run it.

Then FO crashed because i had no default/data, so I downloaded data.tar.bz2 (from somewhere off the forums), uncompressed it into default, and then ran FO again.

Joy! It works! I get a slash screen and everything.

Bummer. Everything's in 1280x1024 resolution and my lap only does 1024x768 and I can't see half the game.

Work-around anyone? Is there a setting that I'm missing or do I need a new set of data files for that resolution?

Regards

Carlos

Posted: Sun May 08, 2005 2:15 am
by Tyreth
Run freeorion with --help. You can set the width and height manually. Eg:
./freeorion --app-width 1024 --app-height 768

-f for full screen

Posted: Sun May 08, 2005 10:30 am
by solrac776
Thanks Tyreth!

Problems compiling GiGi

Posted: Mon May 30, 2005 10:53 pm
by mark1ewis
Posted this in another forum, before realizing there was a sticky help topic-- sorry if you read this twice.

GiGi actually compiles, but refuses to link. I think the error is more related to my boost install than with GiGi, but figured I'd run it by this forum in hopes of getting a quick answer or pointing out something obvious I'm missing.

Here is the failing command and the error message:

g++ -shared -nostdlib /usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../../../lib64/crti.o /usr/lib/gcc/x86_64-redhat-linux/3.4.3/crtbeginS.o .libs/GGApp.o .libs/GGButton.o .libs/GGClr.o .libs/GGControl.o .libs/GGDrawUtil.o .libs/GGDropDownList.o .libs/GGDynamicGraphic.o .libs/GGEdit.o .libs/GGEventPump.o .libs/GGFont.o .libs/GGListBox.o .libs/GGMenu.o .libs/GGMultiEdit.o .libs/GGPluginInterface.o .libs/GGPtRect.o .libs/GGScroll.o .libs/GGSlider.o .libs/GGStaticGraphic.o .libs/GGTextControl.o .libs/GGTexture.o .libs/GGWnd.o .libs/GGZList.o .libs/XMLDoc.o .libs/GGFileDlg.o .libs/GGThreeButtonDlg.o -Wl,--whole-archive ../libltdl/.libs/libltdlc.a -Wl,--no-whole-archive -L/usr/X11R6/lib64 -L/usr/X11R6/lib -L/usr/lib64 /usr/lib64/libfreetype.so -lz -lboost_signals -lboost_filesystem -llog4cpp -lILUT -lGLU /usr/lib64/libGL.so /usr/lib64/libSDL.so -lIL -lILU -ldl -lpthread -L/usr/lib/gcc/x86_64-redhat-linux/3.4.3 -L/usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../../../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../.. -L/lib/../lib64 -L/usr/lib/../lib64 -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-redhat-linux/3.4.3/crtendS.o /usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../../../lib64/crtn.o -Wl,--rpath -Wl,/usr/lib64 -Wl,-soname -Wl,libGiGi.so.0 -o .libs/libGiGi.so.0.0.0
[mark@localhost src]$ vi run.sh
[mark@localhost src]$ sh run.sh
/usr/bin/ld: /usr/lib64/libboost_signals.a(trackable.o): relocation R_X86_64_32S against `boost::signals::trackable::signal_disconnected(void*, void*)' can not be used when making a shared object; recompile with -fPIC
/usr/lib64/libboost_signals.a: could not read symbols: Bad value
collect2: ld returned 1 exit status


-- Mark

Posted: Tue May 31, 2005 4:26 am
by tzlaine
You should be linking against .so files, not .a files, as the error indicates. If those are not present in /usr/lib64, you need to put wherever they are located before /usr/lib64 in your search path, or you need to build them and place the there.

FMOD not 64-bit

Posted: Tue May 31, 2005 2:29 pm
by mark1ewis
Thanks for the tip-- apparently the boost RPM's for RHEL4 create the .so.1 symlinks, but not the .so symlinks-- weird.

Now I'm running into a problem that FMOD is not available for x86_64 and it's closed-source so I can't recompile.

Is there any way to compile without FMOD, by disabling sound?

Thanks,
Mark

Posted: Fri Jul 29, 2005 10:05 am
by Sky Keeper
I need help with GG. it uses libltdl that needs lots of config info. Can anyone provide a working GG project for MSVC 7.1? or config.h for that compiler? or GiGi and GiGiSDL libs and dlls for win32.

GiGi ...

Posted: Tue Aug 09, 2005 7:43 pm
by MareviQ
I've found this project by complete accident, and yet it has captured my imagination. So, basically, i want to help out (i'm a novice c++ programmer - "novice" as in "i've never done any graphical apps whatsoever")

So, i've tried to compile GiGi, with mixed results - first by make. When using it, my whole autoconf stuff decieded that it's too new, and the files in CVS were done using an older version. Still, it started to compile. THEN, it choked on headers, basically on all those including external, system-shell-defined variables, like %(gg_devil_with_allegro)s - it all stayed in the .h files...

Then i've tried scons ad it all worked like a charm... but including system optimalisation into scons is a problem (i'm trying to get it all into a ebulid - i'm using gentoo, and i don't like files just being installed somewhere, without something remembering what files were those and how to remove them later.) and i'd prefer to build it using the standard configure/make/make intall way (with optional ./autogen.sh earlier)

so is GiGi currently buildable using make, or scons is the preffered way? (or just maybye my system messed something up? - gcc-3.4.4, glibc-2.3.5, autoconf-2.59, automake-1.9.6, binutils-2.16.1, libtool-1.5.18 on a 2.6.11 kernel)

....
note after some testing: aclocal just dies when it can't find one of the paths given to search for m4 files (/usr/local/share/aclocal in my case) doing nothing... but even after fixing this, my main problem still remains unsolved (and I don't have allegro installed, just on a side note)
to me it looks like sth is wrong with the make system, as the %-thngs should be long gone once the files get to g++[/b]

Posted: Wed Aug 10, 2005 12:10 am
by Tyreth
SCons is the way that GiGi is now meant to compile. I wasn't aware that would have implications for Gentoo, but I think it's something Gentoo should consider including in its system because I imagine more projects will begin to use it in the future. FreeOrion itself currently uses the normal configure/make tools, but you may have troubles unless you're using up to date tools.

If you are able to get an ebuild working for this and contribute it to Gentoo for when 0.3 is ready that would be very useful. Also, welcome to the forums!

GiGi + scons + portage + sandbox = a headache

Posted: Wed Aug 10, 2005 2:07 pm
by MareviQ
I've run into some problems regarding forcing scons (during GiGi compilation) to play nice with Gentoo intstalation scripts. It manages to make sandbox quite irate about it trying to write .sconsign files in several directories it's not supposed to...

sandbox is sort of a secure pre-install enviroment - it makes sure that during installation/compilation/etc no weird things are done (mostly trying to access directories and files you're not supposed to.) and scons tries to put .sconsign files in /usr/include/SDL, /usr/include/SDL/SDL and /usr/lib/ - obviously not something that should happen during source compilation process... even tho from what i've gathered those hold just file signatures...

and one more thing - it appears that newer versions of graphviz (eg. 2.4) aren't quite backwards-compabitable (or however you write this word) - i had to downgrade to 2.2 to have a dot.h required by FreeOrion in /usr/include/graphviz ... it ALSO appears that emerging graphviz in gentoo wont make other programs see the installed libraries... a shame... i'll try to get it to work this evening, in hopes of creating a one-step install procedure for gentoo users ... hopefully...

GiGi

Posted: Tue Sep 13, 2005 10:52 am
by MareviQ
It looks like the work on GiGi has been resumed, as the cvs version doesn't compile on my pc at the moment with following error:

Code: Select all

g++ -pthread -D_REENTRANT -Wall -O2 -fPIC -I/usr/include/SDL -I/usr/include/freetype2 -Iinclude -Iinclude/net -Iinclude/SDL -Iinclude/dialogs -Ilibltdl -c -o src/GGApp.os src/GGApp.cpp
In file included from include/GGApp.h:35,
                 from src/GGApp.cpp:27:
include/GGBase.h:123: error: ISO C++ forbids declaration of `sp_counted_base_impl' with no type
include/GGBase.h:123: error: expected `;' before '<' token
In file included from src/GGApp.cpp:29:
include/GGBrowseInfoWnd.h:135: error: expected constructor, destructor, or type conversion before ';' token
scons: *** [src/GGApp.os] Error 1
scons: building terminated because of errors.
on the bright side, i've managed to make it play nice and not put any .sconsign files anywhere in my system, by adding

Code: Select all

SConsignFile()
in SConstruct file. It was discussed here:http://scons.tigris.org/servlets/ReadMs ... msgNo=1889. And here is the diff:

Code: Select all

--- GG/SConstruct       2005-09-13 12:29:14.000000000 +0200
+++ GG/SConstruct       2005-09-13 12:27:27.000000000 +0200
@@ -7,6 +7,7 @@
 from build_support import *

 env = Environment()
+SConsignFile()

 mising_pkg_config = not WhereIs('pkg-config')
Edit: disregard that compile problem, it was caused by me having the wrong version of boost (1.33.0 ... my system updated it during the last system-wide update ... probably when i wasn't looking) - right now everything compiles cleanly... but it tries to do something weird again during the install process:

Code: Select all

scons: done building targets.
 * build completed, installing files
>>> Test phase [not enabled]: media-libs/gigi-20050808

>>> Install gigi-20050808 into /var/tmp/portage/gigi-20050808/image/ category media-libs
scons: Reading SConscript files ...
Using previous successful configuration; if you want to re-run the configuration step, run "scons configure".
scons: done reading SConscript files.
scons: Building targets ...
ACCESS DENIED  unlink:    /usr/include/GG/GGSlider.h
scons: *** [/usr/include/GG/GGSlider.h] Permission denied
scons: building terminated because of errors.
Note: the first scons message is when it finishes the compilation ("scons prefix='/usr'"). Then there are some gentoo install scripts messages, and finally, scons is run once again ("scons prefix='/usr' install") but is stopped when it tries to do something sandbox doesn't approve of... any ideas how to prevent this?

Edit2: Problems solved.

Posted: Wed Sep 21, 2005 8:58 pm
by Asky
EDIT: n/m, I fixed it