1.3 on Linux (Mandrake 10.1)
by EddieRay · in Torque Game Engine · 11/09/2004 (6:45 am) · 5 replies
I'm trying to compile 1.3 on Linux...
I get the following errors very quickly:
[ed@toaster torque13]$ make -f mk/configure.mk OS=LINUX COMPILER=GCC3 BUILD=DEBUG 2>&1 | tee make.config.log
Current Configuration: this config is VALID
OS: LINUX
COMPILER: GCC3
BUILD: DEBUG
DIR.OBJ: out
To change the current configuration type:
make -f mk/configure.mk {arguments, ...}
required arguments:
OS={WIN32 BEOS LINUX OpenBSD FreeBSD Solaris}
COMPILER={CW6 VC6 GCC2 GCC3}
BUILD={DEBUG RELEASE}
optional arguments:
DIR.OBJ={path to store intermediate obj files}
Note: all arguments are case sensitive.
[ed@toaster torque13]$ make 2>&1 | tee make..log --> Compiling lpng/png.c
'-mcpu=' is deprecated. Use '-mtune=' or
[...SNIP...]
--> Compiling audio/audio.cc
'-mcpu=' is deprecated. Use '-mtune=' or '-march=' instead.
In file included from ./audio/audioBuffer.h:16,
from ./audio/audioDataBlock.h:13,
from audio/audio.cc:7:
./core/resManager.h: In member function 'void Resource::unlock()':
./core/resManager.h:255: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
./core/resManager.h: In member function 'void Resource::purge()':
./core/resManager.h:263: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
./core/resManager.h:265: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
./core/resManager.h: In member function 'void Resource::_unlock()':
./core/resManager.h:278: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
In file included from ./sim/netConnection.h:19,
from ./game/gameConnection.h:16,
from audio/audio.cc:11:
./platform/event.h: At global scope:
./platform/event.h:137: error: a casts to a type other than an integral or enumeration type cannot appear in a constant-expression
./platform/event.h:137: error: '->' cannot appear in a constant-expression
./platform/event.h:137: error: '&' cannot appear in a constant-expression
./platform/event.h:137: error: enumerator value for 'PacketReceiveEventHeaderSize' not integer constant
./platform/event.h:140: error: a casts to a type other than an integral or enumeration type cannot appear in a constant-expression
./platform/event.h:140: error: '->' cannot appear in a constant-expression
./platform/event.h:140: error: '&' cannot appear in a constant-expression
./platform/event.h:140: error: enumerator value for 'ConnectedReceiveEventHeaderSize' not integer constant
./platform/event.h:143: error: a casts to a type other than an integral or enumeration type cannot appear in a constant-expression
./platform/event.h:143: error: '->' cannot appear in a constant-expression
./platform/event.h:143: error: '&' cannot appear in a constant-expression
./platform/event.h:145: error: enumerator value for 'ConsoleEventHeaderSize' not integer constant
audio/audio.cc: In function 'int loopingImageSort(const void*, const void*)':
audio/audio.cc:161: warning: converting to 'int' from 'float'
audio/audio.cc: In function 'int streamingSourceSort(const void*, const void*)':audio/audio.cc:193: warning: converting to 'int' from 'float'
audio/audio.cc: In function 'AUDIOHANDLE alxCreateSource(const Audio::Description*, const char*, const MatrixF*, AudioSampleEnvironment*)':
audio/audio.cc:707: warning: converting to non-pointer type 'ALuint' from NULL
audio/audio.cc: In function 'ALuint alxGetWaveLen(ALuint)':
audio/audio.cc:2092: warning: converting to 'ALuint' from 'F64'
make[1]: *** [out.GCC3.DEBUG/audio/audio.obj] Error 1
make: *** [default] Error 2
[ed@toaster torque13]$
----
Any idea how to fix this?
Thanks,
Ed
I get the following errors very quickly:
[ed@toaster torque13]$ make -f mk/configure.mk OS=LINUX COMPILER=GCC3 BUILD=DEBUG 2>&1 | tee make.config.log
Current Configuration: this config is VALID
OS: LINUX
COMPILER: GCC3
BUILD: DEBUG
DIR.OBJ: out
To change the current configuration type:
make -f mk/configure.mk {arguments, ...}
required arguments:
OS={WIN32 BEOS LINUX OpenBSD FreeBSD Solaris}
COMPILER={CW6 VC6 GCC2 GCC3}
BUILD={DEBUG RELEASE}
optional arguments:
DIR.OBJ={path to store intermediate obj files}
Note: all arguments are case sensitive.
[ed@toaster torque13]$ make 2>&1 | tee make..log --> Compiling lpng/png.c
'-mcpu=' is deprecated. Use '-mtune=' or
[...SNIP...]
--> Compiling audio/audio.cc
'-mcpu=' is deprecated. Use '-mtune=' or '-march=' instead.
In file included from ./audio/audioBuffer.h:16,
from ./audio/audioDataBlock.h:13,
from audio/audio.cc:7:
./core/resManager.h: In member function 'void Resource
./core/resManager.h:255: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
./core/resManager.h: In member function 'void Resource
./core/resManager.h:263: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
./core/resManager.h:265: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
./core/resManager.h: In member function 'void Resource
./core/resManager.h:278: error: invalid use of undefined type 'struct ResManager'
./core/resManager.h:38: error: forward declaration of 'struct ResManager'
In file included from ./sim/netConnection.h:19,
from ./game/gameConnection.h:16,
from audio/audio.cc:11:
./platform/event.h: At global scope:
./platform/event.h:137: error: a casts to a type other than an integral or enumeration type cannot appear in a constant-expression
./platform/event.h:137: error: '->' cannot appear in a constant-expression
./platform/event.h:137: error: '&' cannot appear in a constant-expression
./platform/event.h:137: error: enumerator value for 'PacketReceiveEventHeaderSize' not integer constant
./platform/event.h:140: error: a casts to a type other than an integral or enumeration type cannot appear in a constant-expression
./platform/event.h:140: error: '->' cannot appear in a constant-expression
./platform/event.h:140: error: '&' cannot appear in a constant-expression
./platform/event.h:140: error: enumerator value for 'ConnectedReceiveEventHeaderSize' not integer constant
./platform/event.h:143: error: a casts to a type other than an integral or enumeration type cannot appear in a constant-expression
./platform/event.h:143: error: '->' cannot appear in a constant-expression
./platform/event.h:143: error: '&' cannot appear in a constant-expression
./platform/event.h:145: error: enumerator value for 'ConsoleEventHeaderSize' not integer constant
audio/audio.cc: In function 'int loopingImageSort(const void*, const void*)':
audio/audio.cc:161: warning: converting to 'int' from 'float'
audio/audio.cc: In function 'int streamingSourceSort(const void*, const void*)':audio/audio.cc:193: warning: converting to 'int' from 'float'
audio/audio.cc: In function 'AUDIOHANDLE alxCreateSource(const Audio::Description*, const char*, const MatrixF*, AudioSampleEnvironment*)':
audio/audio.cc:707: warning: converting to non-pointer type 'ALuint' from NULL
audio/audio.cc: In function 'ALuint alxGetWaveLen(ALuint)':
audio/audio.cc:2092: warning: converting to 'ALuint' from 'F64'
make[1]: *** [out.GCC3.DEBUG/audio/audio.obj] Error 1
make: *** [default] Error 2
[ed@toaster torque13]$
----
Any idea how to fix this?
Thanks,
Ed
About the author
#2
g++ (GCC) 3.4.1 (Mandrakelinux 10.1 3.4.1-4mdk)
Copyright (C) 2004 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.
11/09/2004 (7:32 am)
[ed@toaster ed]$ g++ --versiong++ (GCC) 3.4.1 (Mandrakelinux 10.1 3.4.1-4mdk)
Copyright (C) 2004 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.
#3
gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)
Could someone please post all the steps to compile the skd on linux.
I checked out the head with cvs and I have been searching for directions to compile this monster. I am felling rather stupid right now..
Thanks.
12/07/2004 (8:48 pm)
I am getting less than he is. I only get the configuration print out and nothing is getting compiledgcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)
Could someone please post all the steps to compile the skd on linux.
I checked out the head with cvs and I have been searching for directions to compile this monster. I am felling rather stupid right now..
Thanks.
#4
1) Install the SDK sources. Use the "cd" command to change to the top-level directory where you installed the sources.
2) Run the following to configure the sources for your compiler and OS:
make -f mk/configure.mk OS=LINUX COMPILER=GCC3 BUILD=DEBUG
3) Then run the following to build the thing:
make
4) At this point you should have a EXE called:
example/torqueDemo_DEBUG.bin
...which you can run with:
cd example
./torqueDemo_DEBUG.bin -game fps
If there are problems with step 2), there might be a bit of editing necessary - usually one of the files in the "mk" directory needs to be fixed up for your particular version of Linux, but it's usually pretty simple if you're familiar with "Makefiles" and the "make" command.
Hope this helps!
12/07/2004 (10:11 pm)
For gcc 3.3.3, the steps should be simply:1) Install the SDK sources. Use the "cd" command to change to the top-level directory where you installed the sources.
2) Run the following to configure the sources for your compiler and OS:
make -f mk/configure.mk OS=LINUX COMPILER=GCC3 BUILD=DEBUG
3) Then run the following to build the thing:
make
4) At this point you should have a EXE called:
example/torqueDemo_DEBUG.bin
...which you can run with:
cd example
./torqueDemo_DEBUG.bin -game fps
If there are problems with step 2), there might be a bit of editing necessary - usually one of the files in the "mk" directory needs to be fixed up for your particular version of Linux, but it's usually pretty simple if you're familiar with "Makefiles" and the "make" command.
Hope this helps!
Torque 3D Owner abc
abc