Build not quite running
by Ronny Bangsund · in Torque Game Builder · 12/05/2006 (4:44 am) · 7 replies
I've got the v1.1.1 release built, and it's running the editor when I just run that without parameters.
Lots of options aren't working, though, and even with Gary's fix to show the projects, they won't actually
load. What's worse is that none of the text boxes let me enter anything! Building is impossible, creating a
new project likewise.
Then we have the games..I figured out there's supposed to be a -game option (there isn't good documentation
on this), which just launches the editor again. Same broken thing as above. Copying the executable into a
game directory just hangs. No window is ever opened.
Compiler used:
gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)
It doesn't even run the editor (canvas instantiation error), and I prefer to work in Linux anyway.
How do I make things work at least enough to test a demo?
Lots of options aren't working, though, and even with Gary's fix to show the projects, they won't actually
load. What's worse is that none of the text boxes let me enter anything! Building is impossible, creating a
new project likewise.
Then we have the games..I figured out there's supposed to be a -game option (there isn't good documentation
on this), which just launches the editor again. Same broken thing as above. Copying the executable into a
game directory just hangs. No window is ever opened.
Compiler used:
gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)
It doesn't even run the editor (canvas instantiation error), and I prefer to work in Linux anyway.
How do I make things work at least enough to test a demo?
About the author
(Waiting for UTF-8 to work again!) ಥ_ಥ
#2
As for your lack of keyboard input, I would serious consider that it's related to the 'X11_KeyToUnicode' issue I posted about in another thread. If you're using a newer version of SDL, TGB won't be able to use this no-longer-public function (which apparently was never meant to be public in the first place) to translate key events from X into a form it can use, with the result being an inability to read the keyboard. Again assuming that you have access to the source code, make the fix I posted in that thread - if not, grab Gary's build of 1.1.3 that I believe has this fix already applied.
12/05/2006 (11:43 am)
Just wondering: where are you running the binary from? I vaguely remember having a few similar problems at first, and what I was doing wrong was running the binary from the wrong place - it should be placed in and run from the 'games' subdirectory, where each of the individual game project folders are located.As for your lack of keyboard input, I would serious consider that it's related to the 'X11_KeyToUnicode' issue I posted about in another thread. If you're using a newer version of SDL, TGB won't be able to use this no-longer-public function (which apparently was never meant to be public in the first place) to translate key events from X into a form it can use, with the result being an inability to read the keyboard. Again assuming that you have access to the source code, make the fix I posted in that thread - if not, grab Gary's build of 1.1.3 that I believe has this fix already applied.
#3
Not quite sure why it would do that.
I re-downloaded the Windows package, and whaddayaknow, I was using a previous version before that!
The new one works - it even runs twice in a row, I can build projects etc. So I copied the engine directory
over to the Linux workstation and did the two fixes (input and file-IO), then compiled from scratch with
GCC 4.1.1.
Results running the editor from $TGB/games/:
It starts off with the previous project I ever managed to load (FishDemo), and on opening any project, it exits
with an error message:
I renamed the executable to editor for convenience - TAB completion halts at the capital T ;)
(I tried this process with the original filename - same problems as above and below)
BUT on the next start of the editor, I get the actual project I tried to open! So it partially works.
It's just something that makes it bail out. It's not a proper crash, as error handling is taking over here,
not a core dump. I guess. But what do I know of the modern magic what is C++ :P
OK, projects can load in two steps and saving seems to work. Input is still broken, however. I'm not too fond
of the idea of ripping out my package managed SDL just to get a broken SDL working, because that will
uninstall a hell of a lot of software I need, not just dev libraries :/
Static linking..not sure I like that idea, either. Anyone have a makefile that statically links SDL,
so I don't have to figure that out? :)
Running games by copying the binary into each directory still doesn't work, and it completely ignores
the -game argument.
By the way: Without the input fix, neither version I tried to compile would link, since there were missing
symbols in my SDL version.
So, how do we fix input? The platform sources don't look too overwhelming, but I'm a tad rusty with C++.
Why does it just hang when I put a binary in each game directory and run from there in a shell?
Thanks for the help so far - at least 1.1.3 compiles on Linux, but I'm like a walking entropy field sometimes ;)
12/06/2006 (2:06 pm)
I tried the build Gary made of 1.1.3, but it crashed with a float exception. Heck, capital F float even :PNot quite sure why it would do that.
I re-downloaded the Windows package, and whaddayaknow, I was using a previous version before that!
The new one works - it even runs twice in a row, I can build projects etc. So I copied the engine directory
over to the Linux workstation and did the two fixes (input and file-IO), then compiled from scratch with
GCC 4.1.1.
Results running the editor from $TGB/games/:
It starts off with the previous project I ever managed to load (FishDemo), and on opening any project, it exits
with an error message:
sh: ./editor &: not found
I renamed the executable to editor for convenience - TAB completion halts at the capital T ;)
(I tried this process with the original filename - same problems as above and below)
BUT on the next start of the editor, I get the actual project I tried to open! So it partially works.
It's just something that makes it bail out. It's not a proper crash, as error handling is taking over here,
not a core dump. I guess. But what do I know of the modern magic what is C++ :P
OK, projects can load in two steps and saving seems to work. Input is still broken, however. I'm not too fond
of the idea of ripping out my package managed SDL just to get a broken SDL working, because that will
uninstall a hell of a lot of software I need, not just dev libraries :/
Static linking..not sure I like that idea, either. Anyone have a makefile that statically links SDL,
so I don't have to figure that out? :)
Running games by copying the binary into each directory still doesn't work, and it completely ignores
the -game argument.
By the way: Without the input fix, neither version I tried to compile would link, since there were missing
symbols in my SDL version.
So, how do we fix input? The platform sources don't look too overwhelming, but I'm a tad rusty with C++.
Why does it just hang when I put a binary in each game directory and run from there in a shell?
Thanks for the help so far - at least 1.1.3 compiles on Linux, but I'm like a walking entropy field sometimes ;)
#4
Do you have a debug version, Gary?
12/06/2006 (2:10 pm)
Here's what I get from the floating point exception with gdb:Program received signal SIGFPE, Arithmetic exception. 0xb7faf8b6 in do_lookup_x () from /lib/ld-linux.so.2
Do you have a debug version, Gary?
#5
I have TGB running fine under Win32, so I built a project out of something and copied over to Linux,
then copied my compiled Linux executable into this build directory. It ran from there.
The editor is still useless under Linux - slow mouse movement (GL acceleration is definitely fine,
as I've got some 3D games that work well) and the inability to create a blank project. Nothing happens,
but it will complain if a directory already exists.
I've also resolved input problems for now by compiling my own SDL 1.2.11 with a one-line addition to
export the internal function so many rely on. The famous fix made input not work at all on my system.
Now to either build SDL statically, or include it with any games :)
12/11/2006 (8:28 am)
Some sort of success!I have TGB running fine under Win32, so I built a project out of something and copied over to Linux,
then copied my compiled Linux executable into this build directory. It ran from there.
The editor is still useless under Linux - slow mouse movement (GL acceleration is definitely fine,
as I've got some 3D games that work well) and the inability to create a blank project. Nothing happens,
but it will complain if a directory already exists.
I've also resolved input problems for now by compiling my own SDL 1.2.11 with a one-line addition to
export the internal function so many rely on. The famous fix made input not work at all on my system.
Now to either build SDL statically, or include it with any games :)
#6
I of course can't promise that doing so will fix the slowness issue for you, but something as simple as updating your OpenAL libraries is definately worth a shot. :)
12/11/2006 (7:05 pm)
I was having issues myself with slow mouse movement and a slow, stuttery framerate in general, and spent a fair bit of time investigating the problem. After a bit of work with a couple profilers, I discovered that TGB was spending almost a quarter of its time in the OpenAL libraries! I updated OpenAL to the newest version available in portage, and the slowness problem in TGB went away completely - the Linux version now runs as smoothly here as the other versions. I of course can't promise that doing so will fix the slowness issue for you, but something as simple as updating your OpenAL libraries is definately worth a shot. :)
#7
anything useful with in Linux anyway :/
Games work just fine and look great. I'll be happy with that for now :)
12/12/2006 (2:01 am)
I'll try that, but the strange thing is that it only happens occasionally, with the editor, which I can't doanything useful with in Linux anyway :/
Games work just fine and look great. I'll be happy with that for now :)
Torque Owner Gary "ChunkyKs" Briggs
In another thread somewhere I linked a TGB1.1.3 binary I built that you shoudl be able to just slap into windows 1.1.3 and have it work fine. [which actually is missing the new T2Dtextobject thing, because platformX86UNIX doesn't currently expose an enumeratefonts function].
Projects not loading; explain? There's a problem where loading a project makes the engine not restart properly, if you newly start a fresh instance of TGB.bin it should be ok.
Gary (-;