Page 1 of 1
Can't compile from source
Posted: Fri Dec 09, 2011 9:17 am
by shoun1234
I download source from trunk. But the compilation throws
Code: Select all
char.c:8870:8: error: conflicting types for ‘ChrEnviro_synchronize’
char.c:3163:3: note: previous implicit declaration of ‘ChrEnviro_synchronize’ was here
make: *** [char.o] Error 1
when compiling with make -f Makefile.unix (according to README.Linux)
Do ./autogen.sh from top level throws
Code: Select all
configure: creating ./config.status
.in'ig.status: error: cannot find input file: `
I can't find solution for this on the internet for using search function in this forum.
Also, if compiling 2.6.x version, it complains
Code: Select all
make -C ./game all PREFIX=/usr PROJ_NAME=egoboo-2.x
make[1]: Entering directory `/path/userA/egoboo-2.6.x/game'
make[1]: *** No rule to make target `egoboo_display.o', needed by `egoboo-2.x'. Stop.
make[1]: Leaving directory `/home/userA/egoboo-2.6.x/game'
make: *** [egoboo] Error 2
How can I compile egoboo from source?
Thanks
Re: Can't compile from source
Posted: Fri Dec 09, 2011 11:10 am
by Zefz
Try the 2.8.x branch instead of the trunk, which is the currently active development branch:
http://egoboo.svn.sourceforge.net/viewv ... hes/2.8.x/
Re: Can't compile from source
Posted: Fri Dec 09, 2011 12:01 pm
by shoun1234
After checking out version 2.8.x, compiling with command `make all` it shows
Code: Select all
/usr/bin/libtool: line 1128: gcc-3: command not found
make[1]: *** [bbox.lo] Error 1
Does egoboo use gcc 3?
My gcc version is (Debian 4.6.2-5) 4.6.2
Thanks for help
Re: Can't compile from source
Posted: Fri Dec 09, 2011 4:09 pm
by penguinflyer5234
egolib/Makefile -> line 22:
CC := gcc-3
change to
CC := gcc
Re: Can't compile from source
Posted: Fri Dec 09, 2011 5:42 pm
by shoun1234
Thanks. That solves the previous problem. Now there is a new one. The error shows
Code: Select all
In file included from /usr/include/stdlib.h:43:0,
from /usr/include/SDL/SDL_stdinc.h:40,
from /usr/include/SDL/SDL_endian.h:31,
from ./endian.h:24,
from /usr/include/ctype.h:41,
from ../egolib/../egolib/../egolib/typedef.h:26,
from ../egolib/../egolib/bbox.h:26,
from ../egolib/bbox.inl:26,
from bbox.c:24:
/usr/include/i386-linux-gnu/bits/waitstatus.h:80:15: error: duplicate member '__w_retcode'
/usr/include/i386-linux-gnu/bits/waitstatus.h:81:15: error: duplicate member '__w_coredump'
/usr/include/i386-linux-gnu/bits/waitstatus.h:82:15: error: duplicate member '__w_termsig'
/usr/include/i386-linux-gnu/bits/waitstatus.h:94:15: error: duplicate member '__w_stopsig'
/usr/include/i386-linux-gnu/bits/waitstatus.h:95:15: error: duplicate member '__w_stopval'
Searching on the internet, it seems the issue of stdlib.h or endian.h. But with find command, I can't be very sure which to mark out.
Code: Select all
./cartman/src/SDL_rotozoom.c:9:#include <stdlib.h>
./egolib/log.c:24:#include <stdlib.h>
./egolib/font_ttf.c:25:#include <stdlib.h>
./egolib/vfs.c:24:#include <stdlib.h>
./egolib/system.h:26:#include <stdlib.h>
./egolib/clock.c:25:#include <stdlib.h>
./egolib/mem.h:27:#include <stdlib.h>
./egolib/file_formats/id_md2.c:29:#include <stdlib.h>
./egolib/file_formats/configfile.h:26:#include <stdlib.h>
./game/Obsolete/Timer.c:25:#include <stdlib.h>
./game/Obsolete/Task.c:26:#include <stdlib.h>
Thanks for the help.
Re: Can't compile from source
Posted: Fri Dec 09, 2011 7:05 pm
by penguinflyer5234
Hmm, try renaming endian.h (wherever it is) and changing the files that include endian.h (in egoboo and egolib!) to whatever you renamed it. (similar problem
here)
Re: Can't compile from source
Posted: Sat Dec 10, 2011 2:42 am
by bgbirdsey
I believe that there are problems using SDL with any version of GCC-4
Re: Can't compile from source
Posted: Sat Dec 10, 2011 8:19 am
by shoun1234
Renaming endian.h to e.g. EndianMacros.h passes the error occurred previously. Now a new message says
Code: Select all
libtool: link: `file_formats/cap_file.lo' is not a valid libtool object
It seems that rebuild some libs is needed. Or object file doesn't exist, but searching with cap_file shows
Code: Select all
./egolib/cap_file.o
./egolib/.libs/cap_file.o
Any suggestion?
Thank you for help
Re: Can't compile from source
Posted: Sun Dec 11, 2011 6:31 pm
by shoun1234
I can not compile with svn source 2.8.x. 2.8.1 obtained from sf can be compiled without a problem.
Thanks for help.
Re: Can't compile from source
Posted: Sun May 05, 2013 2:32 am
by ebyrob
I'm trying to build 2.9.x branch and 2.8.x branch (both seem like two latest versions)
I had the same issues you did with renaming endian.c/.h.
After that I had a missing /enet/enet.h problem:
../egolib/../egolib/network.h:27:23: fatal error: enet/enet.h: No such file or directory
in 2.9.x/ branch I just have a lot of issues with the Makefile being confused about exact file names and .cpp vs .c extensions.
Anyone having luck building from the svn repository? If so, how are you doing it/what OS/compiler are you building on?
Thanks for any insight.
Re: Can't compile from source
Posted: Sun May 05, 2013 2:15 pm
by penguinflyer5234
My code from
this thread is now in branches/pf5234/egoboo, revision 1716. It may not work in either Windows or Linux, I've only tested OS X.
Re: Can't compile from source
Posted: Mon May 06, 2013 2:57 am
by ebyrob
wow that builds without changes!! and it was easy to fix make install_svn. Now my only problem so far is the mouse cursor, but I'm ignoring that for now. Thanks. You should definitely make a tag at some point.
Re: Can't compile from source
Posted: Wed Mar 30, 2016 2:38 pm
by czyzby
I downloaded the Linux version from the official website and I'm having trouble with the compiling:
Code: Select all
/usr/bin/ld: graphic_mad.o: undefined reference to symbol 'fmod@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
All the required libs are present, I think.