Page 1 of 2
Compiling Cafu on Fedora 17 x64
Posted: 2012-08-26, 07:13
by Scorphame
Well Hi everybody I decided to transfer all my development tools to linux and in order to make a game Cafu provides me the tool for make something interesting
the problem is I tried to compile the source code for linux... and well after of the searching of all packages needed for compile cafu and ia have the following error
Code: Select all
[root@darkwarepc Cafu-src-r611]# scons -j 2
scons: Reading SConscript files ...
Checking for C library png... yes
Checking for C library z... yes
Mkdir("ExtLibs/wxWidgets/build-gtk")
os.chdir('ExtLibs/wxWidgets/build-gtk')
../configure --with-gtk --disable-shared --without-libtiff --disable-pnm --disable-pcx --disable-iff --with-opengl --with-regex=builtin --disable-compat26 --disable-compat28
sh: ../configure: Permission denied
os.chdir('/home/scarreno/Downloads/Cafu-src-r611')
scons: *** Error 126
[root@darkwarepc Cafu-src-r611]#
do you know what happen? or anyone knows?
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-27, 23:57
by Carsten
Dear Scorphame,
Scorphame wrote:
Code: Select all
[root@darkwarepc Cafu-src-r611]# scons -j 2
scons: Reading SConscript files ...
Checking for C library png... yes
Checking for C library z... yes
Mkdir("ExtLibs/wxWidgets/build-gtk")
os.chdir('ExtLibs/wxWidgets/build-gtk')
../configure --with-gtk --disable-shared --without-libtiff --disable-pnm --disable-pcx --disable-iff --with-opengl --with-regex=builtin --disable-compat26 --disable-compat28
sh: ../configure: Permission denied
os.chdir('/home/scarreno/Downloads/Cafu-src-r611')
scons: *** Error 126
[root@darkwarepc Cafu-src-r611]#
do you know what happen? or anyone knows?
Are you running this as the root user? I think you should try this as a normal, non-privileged user instead.
About the permission denied, can you find out what the permissions of the
ExtLibs/wxWidgets/configure
file are?
(If you try again as a normal user, it's probably best to start from scratch. That is, re-run
all the instructions at
Getting Started with the Cafu Source Code as the normal user in a fresh directory, in order to avoid accessing files that possibly were created by a different user.)
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-28, 02:29
by Scorphame
was the permission denied the problem... I changed that... the ll show me the file has 666 permissions :/
okay now I were noticed that my GTK is not right... i'll fix it, thanks a lot
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-28, 21:14
by Scorphame
And I also I finalyy get it, I'm copilnig right now the cafu source code under linux Fedora 64 bits... let me say than is a really long process compilnig it (eventually I checked the requierments from getting started with source code) but I needed to install some packages not related there (if they were there, I recomend for users who doesn't use Ubuntu make a comparission)
Here is the list what I did for to compile them (Well I actually enjoyed much more installing some other packages for my own)
Development Libraries (via yum groupinstall)
libpng2-devel (Download the rpm for internet and apply a rpm -ivh in order to find some missing dependences and procede to install them with yum)
gtk2-devel (like libpng2-devel)
mesa devel (yum install mesa*)
change the permissions of ExtLibs/wxWidgets/configure to 767 in order to provide the access from scons
in order to get some other error the scons will tell what rpm is missed and like gtk2 and libpng2 download the rpm for internet and apply a rpm-ivh in order to get the missing dependences...
EIDT: Also
Code: Select all
building associated VariantDir targets: build/linux2/g++/debug build/linux2/g++/release
g++ -o build/linux2/g++/release/Ca3DE/Server/Server.o -c -O3 -funsigned-char -Wall -Werror -Wno-char-subscripts -fno-strict-aliasing -pthread -DNDEBUG -DSCONS_BUILD_DIR=build/linux2/g++/release -D_FILE_OFFSET_BITS=64 -D__WXGTK__ -ILibs -IExtLibs -IExtLibs/wxWidgets/build-gtk/lib/wx/include/gtk2-unicode-static-2.9 -IExtLibs/wxWidgets/include -Ibuild/linux2/g++/release/ExtLibs/lua/src -IExtLibs/lua/src -Ibuild/linux2/g++/release/ExtLibs/bullet/src -IExtLibs/bullet/src Ca3DE/Server/Server.cpp
Ca3DE/Server/Server.cpp: In destructor 'ServerT::~ServerT()':
Ca3DE/Server/Server.cpp:196:29: error: 'close' was not declared in this scope
scons: *** [build/linux2/g++/release/Ca3DE/Server/Server.o] Error 1
scons: building terminated because of errors.
What is that compiling error? I didn't make any change on the code
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-29, 22:47
by Carsten
Scorphame wrote:EIDT: Also
Code: Select all
building associated VariantDir targets: build/linux2/g++/debug build/linux2/g++/release
g++ -o build/linux2/g++/release/Ca3DE/Server/Server.o -c -O3 -funsigned-char -Wall -Werror -Wno-char-subscripts -fno-strict-aliasing -pthread -DNDEBUG -DSCONS_BUILD_DIR=build/linux2/g++/release -D_FILE_OFFSET_BITS=64 -D__WXGTK__ -ILibs -IExtLibs -IExtLibs/wxWidgets/build-gtk/lib/wx/include/gtk2-unicode-static-2.9 -IExtLibs/wxWidgets/include -Ibuild/linux2/g++/release/ExtLibs/lua/src -IExtLibs/lua/src -Ibuild/linux2/g++/release/ExtLibs/bullet/src -IExtLibs/bullet/src Ca3DE/Server/Server.cpp
Ca3DE/Server/Server.cpp: In destructor 'ServerT::~ServerT()':
Ca3DE/Server/Server.cpp:196:29: error: 'close' was not declared in this scope
scons: *** [build/linux2/g++/release/Ca3DE/Server/Server.o] Error 1
scons: building terminated because of errors.
What is that compiling error? I didn't make any change on the code
This sounds like a change in the header files, a relatively frequent occurrence with recent releases of GCC.
What does
output?
Does it help if you add line
near the top of file
Ca3DE/Server/Server.cpp
?
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-30, 01:22
by Scorphame
Carsten wrote:What does
output?
Code: Select all
g++ (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Carsten wrote:Does it help if you add line
near the top of file
Ca3DE/Server/Server.cpp
?
yes it helped but now the problem is in client
Code: Select all
g++ -o build/linux2/g++/release/Ca3DE/Client/Client.o -c -O3 -funsigned-char -Wall -Werror -Wno-char-subscripts -fno-strict-aliasing -pthread -DNDEBUG -DSCONS_BUILD_DIR=build/linux2/g++/release -D_FILE_OFFSET_BITS=64 -D__WXGTK__ -ILibs -IExtLibs -IExtLibs/wxWidgets/build-gtk/lib/wx/include/gtk2-unicode-static-2.9 -IExtLibs/wxWidgets/include -Ibuild/linux2/g++/release/ExtLibs/lua/src -IExtLibs/lua/src -Ibuild/linux2/g++/release/ExtLibs/bullet/src -IExtLibs/bullet/src Ca3DE/Client/Client.cpp
g++ -o build/linux2/g++/release/Ca3DE/Client/ClientStateConnecting.o -c -O3 -funsigned-char -Wall -Werror -Wno-char-subscripts -fno-strict-aliasing -pthread -DNDEBUG -DSCONS_BUILD_DIR=build/linux2/g++/release -D_FILE_OFFSET_BITS=64 -D__WXGTK__ -ILibs -IExtLibs -IExtLibs/wxWidgets/build-gtk/lib/wx/include/gtk2-unicode-static-2.9 -IExtLibs/wxWidgets/include -Ibuild/linux2/g++/release/ExtLibs/lua/src -IExtLibs/lua/src -Ibuild/linux2/g++/release/ExtLibs/bullet/src -IExtLibs/bullet/src Ca3DE/Client/ClientStateConnecting.cpp
Ca3DE/Client/Client.cpp: In destructor 'ClientT::~ClientT()':
Ca3DE/Client/Client.cpp:67:51: error: 'close' was not declared in this scope
scons: *** [build/linux2/g++/release/Ca3DE/Client/Client.o] Error 1
scons: building terminated because of errors.
I did the same... it didn't work
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-30, 02:09
by Scorphame
Solved... I Added the same include file under that .cpp file and ClientStatusIdle.cpp
but we have other
Code: Select all
Libs/Models/Loader_dlod.cpp:87:42: error: deleting object of abstract class type 'ModelLoaderT' which has non-virtual destructor will cause undefined behaviour [-Werror=delete-non-virtual-dtor]
Libs/Models/Loader_dlod.cpp: In destructor 'LoaderDlodT::~LoaderDlodT()':
Libs/Models/Loader_dlod.cpp:97:38: error: deleting object of abstract class type 'ModelLoaderT' which has non-virtual destructor will cause undefined behaviour [-Werror=delete-non-virtual-dtor]
cc1plus: all warnings being treated as errors
scons: *** [Libs/build/linux2/g++/release/Models/Loader_dlod.o] Error 1
scons: building terminated because of errors.
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-31, 00:56
by Carsten
If you update your code to r618, or patch file
Libs/Models/Loader.hpp
as indicated
here, does it help with this problem?
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-31, 01:22
by Scorphame
I'm compiling the last version (I used subversion now to download r618)
let's see if I have some problem
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-08-31, 01:56
by Scorphame
It didn't
I downloaded the source code from Subversion and from webpage
I compiled both with all the modifications that we made... and both bring to me the following error:
Code: Select all
g++ -o build/linux2/g++/release/CaWE/MapTerrain.o -c -O3 -funsigned-char -Wall -Werror -Wno-char-subscripts -fno-strict-aliasing -pthread -DNDEBUG -DSCONS_BUILD_DIR=build/linux2/g++/release -D_FILE_OFFSET_BITS=64 -D__WXGTK__ -ILibs -IExtLibs -IExtLibs/wxWidgets/build-gtk/lib/wx/include/gtk2-unicode-static-2.9 -IExtLibs/wxWidgets/include -Ibuild/linux2/g++/release/ExtLibs/lua/src -IExtLibs/lua/src -Ibuild/linux2/g++/release/ExtLibs/noise/src -IExtLibs/noise/src -I/usr/include/freetype2 CaWE/MapTerrain.cpp
g++ -o build/linux2/g++/release/CaWE/MapWorld.o -c -O3 -funsigned-char -Wall -Werror -Wno-char-subscripts -fno-strict-aliasing -pthread -DNDEBUG -DSCONS_BUILD_DIR=build/linux2/g++/release -D_FILE_OFFSET_BITS=64 -D__WXGTK__ -ILibs -IExtLibs -IExtLibs/wxWidgets/build-gtk/lib/wx/include/gtk2-unicode-static-2.9 -IExtLibs/wxWidgets/include -Ibuild/linux2/g++/release/ExtLibs/lua/src -IExtLibs/lua/src -Ibuild/linux2/g++/release/ExtLibs/noise/src -IExtLibs/noise/src -I/usr/include/freetype2 CaWE/MapWorld.cpp
CaWE/MapTerrain.cpp: In member function 'virtual void MapTerrainT::Render3D(Renderer3DT&) const':
CaWE/MapTerrain.cpp:182:100: error: narrowing conversion of '(1.0e+0 / ((double)(((float)BB.BoundingBox3T<float>::Max.Vector3T<float>::x) - ((float)BB.BoundingBox3T<float>::Min.Vector3T<float>::x))))' from 'double' to 'const float' inside { } is ill-formed in C++11 [-Werror=narrowing]
CaWE/MapTerrain.cpp:183:100: error: narrowing conversion of '(-1.0e+0 / ((double)(((float)BB.BoundingBox3T<float>::Max.Vector3T<float>::y) - ((float)BB.BoundingBox3T<float>::Min.Vector3T<float>::y))))' from 'double' to 'const float' inside { } is ill-formed in C++11 [-Werror=narrowing]
CaWE/MapTerrain.cpp:246:104: error: narrowing conversion of '(1.0e+0 / ((double)(((float)BB.BoundingBox3T<float>::Max.Vector3T<float>::x) - ((float)BB.BoundingBox3T<float>::Min.Vector3T<float>::x))))' from 'double' to 'const float' inside { } is ill-formed in C++11 [-Werror=narrowing]
CaWE/MapTerrain.cpp:247:104: error: narrowing conversion of '(-1.0e+0 / ((double)(((float)BB.BoundingBox3T<float>::Max.Vector3T<float>::y) - ((float)BB.BoundingBox3T<float>::Min.Vector3T<float>::y))))' from 'double' to 'const float' inside { } is ill-formed in C++11 [-Werror=narrowing]
cc1plus: all warnings being treated as errors
scons: *** [build/linux2/g++/release/CaWE/MapTerrain.o] Error 1
scons: building terminated because of errors.
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-09-01, 01:04
by Carsten
Scorphame wrote:It didn't
Uhhh... but it did! You're now seeing another problem.
(I'm still using GCC 4.6 here, and have not yet access to 4.7 to test all this and to fix these issues in the repository. But I expect that Ubuntu 12.10 will come with GCC 4.7 as well.)
I compiled both with all the modifications that we made... and both bring to me the following error:
In all the lines that it is mentioning, please replace all
1.0
constants with
1.0f
constants.
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-09-03, 21:27
by Scorphame
Okay I see.. well I replaced that and it worked, but it stoped in the next file in the destructor of the MorphPrimpT class
Code: Select all
CaWE/MorphPrim.cpp: In destructor 'MorphPrimT::~MorphPrimT()':
CaWE/MorphPrim.cpp:96:102: error: deleting object of polymorphic class type 'MP_VertexT' which has non-virtual destructor might cause undefined behaviour [-Werror=delete-non-virtual-dtor]
CaWE/MorphPrim.cpp:99:88: error: deleting object of polymorphic class type 'MP_EdgeT' which has non-virtual destructor might cause undefined behaviour [-Werror=delete-non-virtual-dtor]
CaWE/MorphPrim.cpp: In member function 'void MorphPrimT::UpdateBrushFromVertices()':
CaWE/MorphPrim.cpp:405:39: error: deleting object of polymorphic class type 'MP_VertexT' which has non-virtual destructor might cause undefined behaviour [-Werror=delete-non-virtual-dtor]
CaWE/MorphPrim.cpp:518:90: error: deleting object of polymorphic class type 'MP_EdgeT' which has non-virtual destructor might cause undefined behaviour [-Werror=delete-non-virtual-dtor]
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-09-03, 22:36
by Carsten
Wow...
Ok, in file
CaWE/MorphPrim.hpp
, in
struct MP_PartT
, please insert line
so that it looks like this:
Code: Select all
struct MP_PartT
{
enum TypeT
{
TYPE_VERTEX,
TYPE_EDGE
};
MP_PartT() : m_Selected(false)
{
}
virtual ~MP_PartT() { }
virtual TypeT GetType() const=0;
virtual Vector3fT GetPos() const=0;
bool m_Selected; ///< Is this part/handle selected by the user?
};
Sorry for all the trouble!
Btw., would you mind posting / sending me a patch with all the modifications as soon as it compiles properly? I'd be happy to apply it to the official SVN repository, so that others who use GCC 4.7 too don't have to go through the same steps.
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-09-03, 23:18
by Scorphame
hahaha no problem about that, In fact looks interesting solving all these stuff and help me to check the code and maybe understand what it does...
I'll pm you all the changes that I've made (and even the other previous steps before compilation on my fedora)
damn another one
Code: Select all
gcc -o ExtLibs/openal-soft/build/linux2/g++/debug/Alc/alsa.o -c -g -fno-strict-aliasing -fpic -DDEBUG -D_GNU_SOURCE=1 -D_REENTRANT -DAL_BUILD_LIBRARY -IExtLibs/openal-soft/build/linux2/g++/debug -IExtLibs/openal-soft -IExtLibs/openal-soft/build/linux2/g++/debug/include -IExtLibs/openal-soft/include -IExtLibs/openal-soft/build/linux2/g++/debug/OpenAL32/Include -IExtLibs/openal-soft/OpenAL32/Include ExtLibs/openal-soft/Alc/alsa.c
gcc -o ExtLibs/openal-soft/build/linux2/g++/debug/Alc/bs2b.o -c -g -fno-strict-aliasing -fpic -DDEBUG -D_GNU_SOURCE=1 -D_REENTRANT -DAL_BUILD_LIBRARY -IExtLibs/openal-soft/build/linux2/g++/debug -IExtLibs/openal-soft -IExtLibs/openal-soft/build/linux2/g++/debug/include -IExtLibs/openal-soft/include -IExtLibs/openal-soft/build/linux2/g++/debug/OpenAL32/Include -IExtLibs/openal-soft/OpenAL32/Include ExtLibs/openal-soft/Alc/bs2b.c
ExtLibs/openal-soft/Alc/alsa.c:33:28: fatal error: alsa/asoundlib.h: No such file or directory
compilation terminated.
gcc -o ExtLibs/openal-soft/build/linux2/g++/debug/Alc/oss.o -c -g -fno-strict-aliasing -fpic -DDEBUG -D_GNU_SOURCE=1 -D_REENTRANT -DAL_BUILD_LIBRARY -IExtLibs/openal-soft/build/linux2/g++/debug -IExtLibs/openal-soft -IExtLibs/openal-soft/build/linux2/g++/debug/include -IExtLibs/openal-soft/include -IExtLibs/openal-soft/build/linux2/g++/debug/OpenAL32/Include -IExtLibs/openal-soft/OpenAL32/Include ExtLibs/openal-soft/Alc/oss.c
scons: *** [ExtLibs/openal-soft/build/linux2/g++/debug/Alc/alsa.o] Error 1
scons: building terminated because of errors.
I was looking for and I didn't find the asoundlib.h file
Re: Compiling Cafu on Fedora 17 x64
Posted: 2012-09-04, 21:35
by Carsten
Scorphame wrote:I was looking for and I didn't find the asoundlib.h file
Did you install the (Fedora-equivalent for the)
libasound2-dev package as suggested at
http://www.cafu.de/wiki/cppdev:gettings ... x_packages ?