MegaGlest Forum

Archives (read only) => Glest Advanced Engine => General discussion => Topic started by: wciow on 15 August 2013, 18:31:31

Title: Problem Compiling 0.3.93 on Linux
Post by: wciow on 15 August 2013, 18:31:31
Since Silnarm has returned to GAE recently I decided to re-download and install GAE to my current system.

I have installed all the necessary deps including Physfs. My system tells me I have version physfs 2.0.2 which should be sufficient. However I have reason to doubt this since GAE installed fine the last time I built from source on Ubuntu some 18 months ago and I have since switched to Linux Mint on my current machine.

I have attempted to rebuild and install physfs 2.0.2 myself to make sure, but ran into even more archaic and difficult errors with that.

Here is the error log.
(click to show/hide)

Not sure if there is a simple way I could fix this?

p.s Just checked the linux packages on the chance they might work but they are not longer hosted (not surprising after 2 years i spose!)
Title: Re: Problem Compiling 0.3.93 on Linux
Post by: Yggdrasil on 16 August 2013, 08:09:12
Are you trying to build the beta release 0.3.93 or git master? Which gcc version are you using?

Please use git master! The old beta release doesn't build with newer gcc versions. Fixes are in git master.
See the compile guide for details: http://sourceforge.net/apps/trac/glestae/wiki/CompileGuideLinux
Title: Re: Problem Compiling 0.3.93 on Linux
Post by: wciow on 16 August 2013, 11:50:02
Thanks Yggdrasil, cloning from git works fine.  :thumbup:

moral of the story, don't try building a two year old download on an up-to-date system  :O
Title: Re: Problem Compiling 0.3.93 on Linux
Post by: tomreyn on 16 August 2013, 12:25:51
I'm just chiming in to say GAE also builds for me on Ubuntu 13.04 (on atibox, specs below). Its gcc 4.7.3 throws plenty of warnings and there are serious selection issues: clicking a single unit often selects multiple units of different types, or a building, double-clicking a unit often selects just this unit or deselects it, right-clicking on the map is often actually registered where a building is placed or another friendly unit stands, making your units not harvest and not attack properly, drawbox selection will often select units outside of the drawbox. Much of this should be due to GLSelectBuffer.
Title: Re: Problem Compiling 0.3.93 on Linux
Post by: Yggdrasil on 18 August 2013, 11:18:29
Most of the warnings should be gone now.

But somehow i have the feeling you won't see the last commits. sourceforge seems to have moved our repository. If you followed the compile guide you have to switch to the new location:
Code: [Select]
$ git remote set-url origin git://git.code.sf.net/p/glestae/glestae
or edit .git/config directly.

Afterwards:
Code: [Select]
$ git pull
$ git describe
0.3-1013-g17d55c5
git describe should give you the same output.
Title: Re: Problem Compiling 0.3.93 on Linux
Post by: silnarm on 19 August 2013, 11:23:20
... and there are serious selection issues: clicking a single unit often selects multiple units of different types, or a building, double-clicking a unit often selects just this unit or deselects it, right-clicking on the map is often actually registered where a building is placed or another friendly unit stands, making your units not harvest and not attack properly, drawbox selection will often select units outside of the drawbox. Much of this should be due to GLSelectBuffer.

about time to replace that ancient selection code me thinks, thanks for the report :)
Title: Re: Problem Compiling 0.3.93 on Linux
Post by: tomreyn on 19 August 2013, 18:01:20
Most of the warnings should be gone now.

I concur, here's what I have left, in case it helps:
Code: [Select]
shared_lib/sources/xml/xml_parser.cpp:248:77: warning: 'auto_ptr' is deprecated (declared at /usr/include/c++/4.7/backward/auto_ptr.h:87) [-Wdeprecated-declarations]
shared_lib/sources/platform/sdl/platform_util.cpp: In function 'size_t Shared::Platform::getFileSize(const string&)':
shared_lib/sources/platform/sdl/platform_util.cpp:327:38: warning: ignoring return value of 'char* strerror_r(int, char*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
shared_lib/sources/platform/sdl/platform_util.cpp: In function 'void Shared::Platform::mkdir(const string&, bool)':
shared_lib/sources/platform/sdl/platform_util.cpp:316:35: warning: ignoring return value of 'char* strerror_r(int, char*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
shared_lib/sources/platform/sdl/platform_util.cpp: In static member function 'static void Shared::Platform::PlatformExceptionHandler::handler(int, siginfo_t*, void*)':
shared_lib/sources/platform/sdl/platform_util.cpp:267:45: warning: ignoring return value of 'int chdir(const char*)', declared with attribute warn_unused_result [-Wunused-result]
map_editor/map.cpp: In member function 'void MapEditor::Map::loadFromFile(const string&)':
map_editor/map.cpp:579:47: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
map_editor/map.cpp:590:53: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
map_editor/map.cpp:591:53: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
map_editor/map.cpp:598:53: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
map_editor/map.cpp:605:53: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
map_editor/map.cpp:613:37: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result]

But somehow i have the feeling you won't see the last commits. sourceforge seems to have moved our repository. If you followed the compile guide you have to switch to the new location:
Code: [Select]
$ git remote set-url origin git://git.code.sf.net/p/glestae/glestae
or edit .git/config directly.

You're right, I completely missed this. The above results refer to building the source at the new origin which for me, too, is at at 0.3-1013-g17d55c5.

about time to replace that ancient selection code me thinks, thanks for the report :)

Happily. It's nice to see some action here.