Compilation error under Arch Linux i686

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).
Post Reply
echoes91
Trader
Trader
Posts: 23
Joined: Mon Mar 07, 2011 8:50 pm

Compilation error under Arch Linux i686

Post by echoes91 »

Hello, i'm tryng to compile SVN under this system as well described on the wiki. I was able to complete every step and play under Ubuntu x64, now I'doing the same here (Ubuntu has got a different guide but after all it's exactly the same) and i get this error:

Code: Select all

make  all-am
make[1]: Entering directory `/home/andre/Software/Vegastrike-SVN/vegastrike'
depbase=`echo src/cmd/collection.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
        g++ -DHAVE_CONFIG_H -I.   -DBOOST_PYTHON_NO_PY_SIGNATURES -DBOOST_PYTHON_STATIC_LIB -I./boost/1_45    -DHAVE_SDL=1 -DSDL_WINDOWING=1      -DHAVE_AL=1   -DHAVE_OGG  -DNV_CUBE_MAP=1 -DHAVE_FFMPEG -D__STDC_CONSTANT_MACROS  -I/usr/include/python2.7 -DHAVE_PYTHON=1    -I./src   -pipe -DNV_CUBE_MAP -O2 -ffast-math  -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -pthread -MT src/cmd/collection.o -MD -MP -MF $depbase.Tpo -c -o src/cmd/collection.o src/cmd/collection.cpp &&\
        mv -f $depbase.Tpo $depbase.Po
In file included from src/cmd/collection.cpp:1:0:
src/cmd/collection.h: In constructor ‘UnitCollection::UnitIterator::UnitIterator()’:
src/cmd/collection.h:41:31: error: ‘NULL’ was not declared in this scope
src/cmd/collection.h: In member function ‘Unit* UnitCollection::UnitIterator::operator*()’:
src/cmd/collection.h:91:20: error: ‘NULL’ was not declared in this scope
src/cmd/collection.h: In constructor ‘UnitCollection::ConstIterator::ConstIterator()’:
src/cmd/collection.h:111:32: error: ‘NULL’ was not declared in this scope
src/cmd/collection.h: In member function ‘Unit* UnitCollection::ConstIterator::operator*() const’:
src/cmd/collection.h:133:20: error: ‘NULL’ was not declared in this scope
src/cmd/collection.h: In member function ‘Unit* UnitCollection::back()’:
src/cmd/collection.h:223:16: error: ‘NULL’ was not declared in this scope
src/cmd/collection.h: In member function ‘Unit* UnitCollection::front()’:
src/cmd/collection.h:232:16: error: ‘NULL’ was not declared in this scope
make[1]: *** [src/cmd/collection.o] Error 1
make[1]: Leaving directory `/home/andre/Software/Vegastrike-SVN/vegastrike'
make: *** [all] Error 2
Since a don't know C or other programming languages (except a bit learned at school, but it's not enought to be useful) I can't understand what's wrong in collection.h. It sounds strange but there's no one found by google or in the whole forum with the same problem while compiling VS
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: Compilation error under Arch Linux i686

Post by loki1950 »

Hi not sure on the source of the error my self,But i think you may be missing one of the development libraries as it is complaining about missing header files. I also moved your post as it is not a bug :wink: But a compilation problem.

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
echoes91
Trader
Trader
Posts: 23
Joined: Mon Mar 07, 2011 8:50 pm

Re: Compilation error under Arch Linux i686

Post by echoes91 »

I'm sorry, i forgot this forum's structure... anyway shouldn't the configure script detect missing libraries? I didn't see errors after it. Here is its output and my config.log:

Code: Select all

checking for gawk... gawk
checking whether ln -s works... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for a BSD-compatible install... /bin/install -c
checking for ranlib... ranlib
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
configure: Using C++ compiler: g++.
configure: Using C   compiler: gcc.
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking dependency style of g++... gcc3
checking for -pthread... yes
checking for libsocket... no
checking for libutil... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking OS.h usability... no
checking OS.h presence... no
checking for OS.h... no
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking fenv.h usability... yes
checking fenv.h presence... yes
checking for fenv.h... yes
checking float.h usability... yes
checking float.h presence... yes
checking for float.h... yes
checking for inttypes.h... (cached) yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking for memory.h... (cached) yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking values.h usability... yes
checking values.h presence... yes
checking for values.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking wctype.h usability... yes
checking wctype.h presence... yes
checking for wctype.h... yes
checking linux/slab.h usability... no
checking linux/slab.h presence... no
checking for linux/slab.h... no
checking linux/malloc.h usability... no
checking linux/malloc.h presence... no
checking for linux/malloc.h... no
checking for vfscanf... yes
checking for lstat... yes
checking tr1/unordered_map usability... yes
checking tr1/unordered_map presence... yes
checking for tr1/unordered_map... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for off_t... yes
checking for pid_t... yes
checking for C/C++ restrict keyword... __restrict
checking for size_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for working volatile... yes
checking for ptrdiff_t... yes
checking whether closedir returns void... no
checking for error_at_line... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking whether gcc needs -traditional... no
checking whether lstat correctly handles trailing slash... yes
checking whether lstat accepts an empty string... no
checking whether lstat correctly handles trailing slash... (cached) yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for working memcmp... yes
checking for sys/time.h... (cached) yes
checking for unistd.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for sys/param.h... (cached) yes
checking for alarm... yes
checking for working mktime... yes
checking for getpagesize... yes
checking for working mmap... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking for sys/socket.h... (cached) yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking return type of signal handlers... void
checking whether stat accepts an empty string... no
checking for working strcoll... yes
checking for working strtod... yes
checking for vprintf... yes
checking for _doprnt... no
checking for atexit... yes
checking for bzero... yes
checking for fesetround... yes
checking for floor... yes
checking for getcwd... yes
checking for gethostbyname... yes
checking for gettimeofday... yes
checking for inet_ntoa... yes
checking for iswprint... yes
checking for localtime_r... yes
checking for mblen... yes
checking for memchr... yes
checking for memmove... yes
checking for memset... yes
checking for mkdir... yes
checking for munmap... yes
checking for pow... yes
checking for putenv... yes
checking for rint... yes
checking for rmdir... yes
checking for select... yes
checking for setenv... yes
checking for socket... yes
checking for sqrt... yes
checking for strcasecmp... yes
checking for strchr... yes
checking for strdup... yes
checking for strerror... yes
checking for strstr... yes
checking for strtol... yes
checking for strtoul... yes
checking for finite... yes
checking for _finite... no
checking for isnan... yes
checking for _isnan... no
checking for MacOSX platform... no
checking ieeefp.h usability... no
checking ieeefp.h presence... no
checking for ieeefp.h... no
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
Enabling user-specified flags: 
configure: Enabling dds cubmap support with -DNV_CUBE_MAP
configure: Enabling optimizations with -O2
checking for Win32 platform... no
checking for CygWin platform... no
checking for Mingw32 platform... no
checking for Linux platform... yes
checking for FreeBSD platform... no
checking for python... python Python 2.7.1
/usr/lib/libpython2.7.so yes
checking for --export-dynamic... no
checking for -export-dynamic... yes
checking for sdl-config... /usr/bin/sdl-config
checking for SDL - version >= 1.0.1... yes
checking for SDL_JoystickOpen... yes
Using SDL Windowing System
checking for GL library... yes
checking for glXGetProcAddressARB... yes
checking for GLU library... yes
checking for GL/gl.h... yes
checking for XmuGetHostname in -lXmu... yes
checking for XListInputDevices in -lXi... yes
checking for glut32 library... -lutil -L/usr/lib -lSDL -lpthread -lGL -lGLU -lXmu -lXi -lglut32
no
checking for glut library... -lutil -L/usr/lib -lSDL -lpthread -lGL -lGLU -lXmu -lXi -lglut
yes
checking GL/glut.h usability... yes
checking GL/glut.h presence... yes
checking for GL/glut.h... yes
checking for expat library... yes
checking expat.h usability... yes
checking expat.h presence... yes
checking for expat.h... yes
checking for png library... yes
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
checking for jpeg library... yes
checking jpeglib.h usability... yes
checking jpeglib.h presence... yes
checking for jpeglib.h... yes
checking for openal library... yes
checking for AL/al.h... yes
checking for al.h... yes
checking AL/alext.h usability... no
checking AL/alext.h presence... yes
configure: WARNING: AL/alext.h: present but cannot be compiled
configure: WARNING: AL/alext.h:     check for missing prerequisite headers?
configure: WARNING: AL/alext.h: see the Autoconf documentation
configure: WARNING: AL/alext.h:     section "Present But Cannot Be Compiled"
configure: WARNING: AL/alext.h: proceeding with the compiler's result
checking for AL/alext.h... no
Configuring with OpenAL support!
checking for vorbis library... yes
checking for vorbis header... yes
found VORBIS header: Enabling ingame ogg support::  -DHAVE_SDL=1 -DSDL_WINDOWING=1      -DHAVE_AL=1   -DHAVE_OGG 
No Crypto++ support
configure: Using Boost Version 1.45.
configure: No Threading Model Used
configure: Using std::list for basis of collision testing
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for OGRE... no
HAVE_OGRE is:
no_ogre is 1
checking for CEGUI... no
checking for CEGUI_OPENGL... no
checking for CEGUI_OGRE... no
checking ffmpeg/avcodec.h usability... no
checking ffmpeg/avcodec.h presence... no
checking for ffmpeg/avcodec.h... no
checking ffmpeg/avformat.h usability... no
checking ffmpeg/avformat.h presence... no
checking for ffmpeg/avformat.h... no
checking ffmpeg/avio.h usability... no
checking ffmpeg/avio.h presence... no
checking for ffmpeg/avio.h... no
checking libavcodec/avcodec.h usability... yes
checking libavcodec/avcodec.h presence... yes
checking for libavcodec/avcodec.h... yes
checking libavformat/avformat.h usability... yes
checking libavformat/avformat.h presence... yes
checking for libavformat/avformat.h... yes
checking libavformat/avio.h usability... yes
checking libavformat/avio.h presence... yes
checking for libavformat/avio.h... yes
checking for libavcodec and libavformat... yes
checking for optional libavutil... yes
checking for libswscale... yes
checking ffmpeg/swscale.h usability... no
checking ffmpeg/swscale.h presence... no
checking for ffmpeg/swscale.h... no
checking libswscale/swscale.h usability... yes
checking libswscale/swscale.h presence... yes
checking for libswscale/swscale.h... yes
checking for GTK2... yes
Using GTK version 2.0
configure: Compiling with CPPFLAGS: -DBOOST_PYTHON_NO_PY_SIGNATURES -DBOOST_PYTHON_STATIC_LIB -I$(top_srcdir)/$(BOOSTDIR)/1_45    -DHAVE_SDL=1 -DSDL_WINDOWING=1      -DHAVE_AL=1   -DHAVE_OGG  -DNV_CUBE_MAP=1 -DHAVE_FFMPEG -D__STDC_CONSTANT_MACROS  -I/usr/include/python2.7 -DHAVE_PYTHON=1    -I$(top_srcdir)/src .
configure: Compiling with CXXFLAGS:   -pipe -DNV_CUBE_MAP -O2 -ffast-math  -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -pthread.
configure: Compiling with LIBS:    -lvorbisfile -lvorbis -logg   -L/usr/lib -lSDL -lpthread  -lGL  -lGLU -lXmu -lXi  -lglut  -lexpat  -lpng  -ljpeg  -lopenal  -lvorbisfile -lvorbis -logg  -lavcodec -lavformat -lavutil -lswscale -L/usr/lib -lpython2.7 -Xlinker -export-dynamic -pthread .
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
You do not have the required permissions to view the files attached to this post.
Svenstaro
Star Pilot
Star Pilot
Posts: 5
Joined: Mon May 23, 2011 9:30 pm

Re: Compilation error under Arch Linux i686

Post by Svenstaro »

The problem is that vegastrike devs apparently don't use gcc 4.6 or they would also have gotten the problem. Anyway, I made a patch against svn:
gcc46.patch
You do not have the required permissions to view the files attached to this post.
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: Compilation error under Arch Linux i686

Post by loki1950 »

From your config log

Code: Select all

conftest.cpp:120:29: fatal error: ffmpeg/avformat.h: No such file or directory
compilation terminated.
And as Sven mentions check which version of gcc you are using As that may be the issue every time there is a new version some portion of the code breaks comes from the fact our source tree is over ten years old :shock:

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
Svenstaro
Star Pilot
Star Pilot
Posts: 5
Joined: Mon May 23, 2011 9:30 pm

Re: Compilation error under Arch Linux i686

Post by Svenstaro »

Can you guys please apply my patch and perhaps make a release? That would make it a lot easier for us on newer compilers.

EDIT: Or give me commit rights on svn. I promise I won't break stuff. :)
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: Compilation error under Arch Linux i686

Post by loki1950 »

Sorry I don`t have those rights myself :lol: And look how long I`ve been around :mrgreen:

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
Svenstaro
Star Pilot
Star Pilot
Posts: 5
Joined: Mon May 23, 2011 9:30 pm

Re: Compilation error under Arch Linux i686

Post by Svenstaro »

Then who does?
Svenstaro
Star Pilot
Star Pilot
Posts: 5
Joined: Mon May 23, 2011 9:30 pm

Re: Compilation error under Arch Linux i686

Post by Svenstaro »

Ok patch is in svn now, rev 13192.
Svenstaro
Star Pilot
Star Pilot
Posts: 5
Joined: Mon May 23, 2011 9:30 pm

Re: Compilation error under Arch Linux i686

Post by Svenstaro »

echoes91: I also fixed the aur package now (not the -svn packages yet). Please try it.
echoes91
Trader
Trader
Posts: 23
Joined: Mon Mar 07, 2011 8:50 pm

Re: Compilation error under Arch Linux i686

Post by echoes91 »

Great, you've been FTL :D I'm downloading it right now, i'll let you know as soon as my connection let me
echoes91
Trader
Trader
Posts: 23
Joined: Mon Mar 07, 2011 8:50 pm

Re: Compilation error under Arch Linux i686

Post by echoes91 »

Everything worked, I'm just a bit sad because framerate is much lower than what I've seen with Ubuntu, fighting won't be possible... fglrx and everything else is up to date, what's the matter with Arch?? Anyway I'm going out off Topic, let's close this thread. Thank you so much
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: Compilation error under Arch Linux i686

Post by loki1950 »

Re the low frame rate was that with the 0.5 stable release or with the latest svn compiled by you under Ubuntu there is a big difference in the system load between them :shock:

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
echoes91
Trader
Trader
Posts: 23
Joined: Mon Mar 07, 2011 8:50 pm

Re: Compilation error under Arch Linux i686

Post by echoes91 »

There's a big difference between Windows and other sys. like Ubuntu (still playable) and Arch (not at all)... this is Graphic Driver's fault (as always, fglrx...). I know that stable version behaves a bit better but i do prefer SVN on a bad OS :)
Post Reply