linux 64bit binary?
Moderator: Moderators
linux 64bit binary?
At first Hello again I wasn't long active in this forum. I hadn't alot of time
in the last months but now im back I hope.
But now I have a question.
I have a linux(ubuntu 13.10) system and have trying to use ZGameEditor in wine but the binnarys I would like to have in an native Linux Player file but I
fail to compile myself so I have the question
Have anyone the linux (64bit) Player binary for the new beta I try to compile him to compile(with FPC 2.7.x) the last hours but it doesn't work.
Can anyone give me the binary, please.
in the last months but now im back I hope.
But now I have a question.
I have a linux(ubuntu 13.10) system and have trying to use ZGameEditor in wine but the binnarys I would like to have in an native Linux Player file but I
fail to compile myself so I have the question
Have anyone the linux (64bit) Player binary for the new beta I try to compile him to compile(with FPC 2.7.x) the last hours but it doesn't work.
Can anyone give me the binary, please.
Hi Dragon, I'm using ZGE under xubuntu+wine too.
I've compiled the player a long time ago, maybe that could be useful for you: viewtopic.php?t=995
But it was 32bits.
I've compiled the player a long time ago, maybe that could be useful for you: viewtopic.php?t=995
But it was 32bits.
Last edited by Ats on Wed Feb 19, 2014 10:48 pm, edited 1 time in total.
thanks Ats but both doesn't work I have try it with your zzdc.dat(renamed to Player_linux.bin) and with your FPC command.Your zzdc.dat make a file but ican't execute it(I have test it with the shaderexample).
Have anyon another idea
Have anyon another idea
Last edited by Dragon on Thu Feb 20, 2014 2:28 pm, edited 1 time in total.
Like I said, it was for an old version (3.0.0, we are now 3.1b).
So I guess that if if you are launching your game from the console, you'll get something like this:
I was just pointing to the topic where you could find informations about the libs that you need to install in order to compile ZzDC. It's a bit late right now, so I'll write a tuto this weekend
So I guess that if if you are launching your game from the console, you'll get something like this:
Code: Select all
Runtime error 216 at $0804B365
$0804B365
$0805128A
Sorry Dragon, there will be no tuto this weekend... I've just spent 6 hours trying to compile ZzDC without luck. Whathever I tried, I'm stuck with:
ZPlatform_SDL.inc(13,18 ) Fatal: Can't find unit libc used by ZPlatform
I don't remember having that problem the last time I compiled it. I even broke my linux by trying to build glibc from scratch. Luckily, I have all my stuff on the cloud... So I don't know if it comes from ZGE sourcecode, or if something has changed with free pascal. Because all is installed and linked fine so I don't get why it won't compile
Ville, do you have some clues ?
ZPlatform_SDL.inc(13,18 ) Fatal: Can't find unit libc used by ZPlatform
I don't remember having that problem the last time I compiled it. I even broke my linux by trying to build glibc from scratch. Luckily, I have all my stuff on the cloud... So I don't know if it comes from ZGE sourcecode, or if something has changed with free pascal. Because all is installed and linked fine so I don't get why it won't compile
Ville, do you have some clues ?
Isn't Libc.pas included with FreePascal on Linux anymore? It definitely used to be. Have you tried searching for that file?
edit: one version can be found here https://github.com/graemeg/freepascal/t ... kages/libc
edit: one version can be found here https://github.com/graemeg/freepascal/t ... kages/libc
I searched for libc and founded libc.so.6 but not libc.pas
Also, there is no libc folder inside /usr/lib/fpc/2.6.2/units/i386-linux/
Is that related ? http://wiki.lazarus.freepascal.org/libc_unit
I downloaded the whole free pascal from github, but didn't manage to compile libc...
But you can already find libc's source here: /usr/share/fpcsrc/2.6.2/packages/libc/
So I compiled that last one using:
fpcmake -w -Tall
make
make install
it gaves
but it didn't changed anything for ZzDC compilation...
So then I moved the compiled libc to /usr/lib/fpc/2.6.2/units/i386-linux/ using
sudo cp -avr /usr/local/lib/fpc/2.6.2/units/i386-linux/libc /usr/lib/fpc/2.6.2/units/i386-linux/libc
And finaly, ZzDC could compile properly (with some warnings but still).
And that was super complicated, I had to dig the dark spaces of the internet and read hundreds of forum posts in order to do that
So now it's 2AM. I'll write the tuto for compiling ZzDC for linux tomorow. Should I write it here or on a dedicated topic somewhere else in the forum?
Also, there is no libc folder inside /usr/lib/fpc/2.6.2/units/i386-linux/
Is that related ? http://wiki.lazarus.freepascal.org/libc_unit
I downloaded the whole free pascal from github, but didn't manage to compile libc...
But you can already find libc's source here: /usr/share/fpcsrc/2.6.2/packages/libc/
So I compiled that last one using:
fpcmake -w -Tall
make
make install
it gaves
Code: Select all
/usr/bin/fpcmake -p -Ti386-linux Makefile.fpc
Processing Makefile.fpc
Writing Package.fpc
/usr/bin/install -m 755 -d /usr/local/lib/fpc/2.6.2/units/i386-linux/libc
/usr/bin/install -c -m 644 Package.fpc /usr/local/lib/fpc/2.6.2/units/i386-linux/libc
/usr/bin/install -m 755 -d /usr/local/lib/fpc/2.6.2/units/i386-linux/libc
/usr/bin/install -c -m 644 units/i386-linux/kerneldefs.ppu units/i386-linux/kernelioctl.ppu units/i386-linux/libc.ppu /usr/local/lib/fpc/2.6.2/units/i386-linux/libc
/usr/bin/install -c -m 644 units/i386-linux/kerneldefs.o units/i386-linux/kernelioctl.o units/i386-linux/libc.o /usr/local/lib/fpc/2.6.2/units/i386-linux/libc
So then I moved the compiled libc to /usr/lib/fpc/2.6.2/units/i386-linux/ using
sudo cp -avr /usr/local/lib/fpc/2.6.2/units/i386-linux/libc /usr/lib/fpc/2.6.2/units/i386-linux/libc
And finaly, ZzDC could compile properly (with some warnings but still).
And that was super complicated, I had to dig the dark spaces of the internet and read hundreds of forum posts in order to do that
So now it's 2AM. I'll write the tuto for compiling ZzDC for linux tomorow. Should I write it here or on a dedicated topic somewhere else in the forum?
It shouldn't have to be this difficult. But maybe they've actually removed Libc from the Freepascal distribution. In that case I should try to look for alternatives because platform_sdl only uses a few calls from Libc, they could be declared internally instead.
You've managed to build ZGE previously so something must have changed with your Freepascal installation. I see 2.6.2 in your path names. Did you try to build the latest Freepascal from the source?
You've managed to build ZGE previously so something must have changed with your Freepascal installation. I see 2.6.2 in your path names. Did you try to build the latest Freepascal from the source?
I've formatted my computer several times since the last time I built ZGE
So here's the strip down tuto to compile ZzDC:
Open the console, update the source and install the needed libs
sudo apt-get update
sudo apt-get install fp-compiler subversion libsdl1.2-dev
Compile the lastest Free Pascal
svn checkout http://svn.freepascal.org/svn/fpc/trunk fpc
cd fpc
make all
sudo make install
Move the fpc from usr/local/lib to usr/lib
(That's the weird part, I don't know how to install fpc directly there...)
sudo cp -r /usr/local/lib/fpc/2.7.1 /usr/lib/fpc
Download and compile ZGE
svn checkout http://zgameeditor.googlecode.com/svn/trunk zge-src
cd zge-src
/usr/lib/fpc/2.7.1/ppc386 -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr
Now all you have to do is go to zge-src/Build, rename ZzDC to Player_linux.bin and move it to your ZGameEditor folder.
From now on, you can simply export your ZGE project using Project/ Build Linux x86 binary
So here's the strip down tuto to compile ZzDC:
Open the console, update the source and install the needed libs
sudo apt-get update
sudo apt-get install fp-compiler subversion libsdl1.2-dev
Compile the lastest Free Pascal
svn checkout http://svn.freepascal.org/svn/fpc/trunk fpc
cd fpc
make all
sudo make install
Move the fpc from usr/local/lib to usr/lib
(That's the weird part, I don't know how to install fpc directly there...)
sudo cp -r /usr/local/lib/fpc/2.7.1 /usr/lib/fpc
Download and compile ZGE
svn checkout http://zgameeditor.googlecode.com/svn/trunk zge-src
cd zge-src
/usr/lib/fpc/2.7.1/ppc386 -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr
Now all you have to do is go to zge-src/Build, rename ZzDC to Player_linux.bin and move it to your ZGameEditor folder.
From now on, you can simply export your ZGE project using Project/ Build Linux x86 binary
I even broke my linux by trying to build glibc from scratch(sorry Ats)
Ok I have try to compile the zzdc.dat as in your tutorial but i get an error
ok here ar a complete compiler log
Ok I have try to compile the zzdc.dat as in your tutorial but i get an error
ok here ar a complete compiler log
Code: Select all
Dragon@Dragon:~/fpc/zge-src$ /usr/lib/fpc/2.7.1/ppcx64 -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr
Warning: Only one source file supported, changing source file to compile from "SDL" into "ZzDC.dpr"
Free Pascal Compiler version 2.7.1 [2014/02/24] for x86_64
Copyright (c) 1993-2014 by Florian Klaempfl and others
Note: Switching assembler to default source writing assembler
Target OS: Linux for x86-64
Compiling ZzDC.dpr
ZzDC.dpr(23,2) Warning: Illegal compiler directive "$WEAKLINKRTTI"
ZzDC.dpr(26,4) Warning: Illegal compiler directive "$EXCESSPRECISION"
Compiling ZClasses.pas
Compiling ZMath.pas
Assembling zmath
Compiling ZLog.pas
Compiling ZPlatform.pas
Compiling SDL.pas
Assembling sdl
Compiling AudioPlayer.pas
Compiling AudioComponents.pas
Compiling ZApplication.pas
Compiling Meshes.pas
Compiling ZBitmap.pas
Compiling ZOpenGL.pas
Assembling zopengl
Assembling zbitmap
Compiling ZExpressions.pas
Compiling ZApplication.pas
Compiling Meshes.pas
Compiling ZApplication.pas
Compiling Collision.pas
Compiling ZApplication.pas
Compiling Commands.pas
Compiling ZApplication.pas
Compiling GLDrivers.pas
Compiling Renderer.pas
Compiling ZApplication.pas
Compiling GLDrivers.pas
GLDrivers.pas(489,32) Warning: Conversion between ordinals and pointers is not portable
GLDrivers.pas(494,43) Warning: Conversion between ordinals and pointers is not portable
GLDrivers.pas(500,38) Warning: Conversion between ordinals and pointers is not portable
GLDrivers.pas(851,54) Warning: Conversion between ordinals and pointers is not portable
GLDrivers.pas(857,63) Warning: Conversion between ordinals and pointers is not portable
GLDrivers.pas(864,56) Warning: Conversion between ordinals and pointers is not portable
Assembling gldrivers
Assembling zapplication
Renderer.pas(693,17) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1344,20) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1345,20) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Assembling renderer
Assembling commands
Assembling collision
Assembling meshes
ZExpressions.pas(483,52) Fatal: Can't find unit WinApi.Windows used by ZExpressions
Fatal: Compilation aborted
ok I have test it with cross compiler but
this doesn't work,too.
heres the new log
this doesn't work,too.
heres the new log
Code: Select all
'/usr/lib/codetyphon/fpc/bin/x86_64-linux/ppcross386' -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -Tlinux -Pi386 -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr
Warning: Only one source file supported, changing source file to compile from "SDL" into "ZzDC.dpr"
ZzDC.dpr(23,2) Warning: Illegal compiler directive "$WEAKLINKRTTI"
ZMath.pas(576,9) Warning: "fdivp" without operand translated into "fdivp %st,%st(1)"
ZMath.pas(870,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
ZMath.pas(888,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
Renderer.pas(693,17) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1344,20) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1345,20) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
AudioPlayer.pas(656,5) Warning: unreachable code
ZPlatform_SDL.inc(15,4) Warning: Unit "libc" is deprecated: "Unportable Kylix legacy unit that only exists on Linux/x86. see http://wiki.freepascal.org/libc_unit "
ZPlatform_SDL.inc(361,5) Warning: unreachable code
ZClasses.pas(658,5) Warning: Constructor should be public
ZClasses.pas(717,6) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(718,14) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(1247,23) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(2038,15) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(3857,19) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(3857,38) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ImplicitMeshes.pas(194,5) Warning: Constructor should be public
Warning: "crti.o" not found, this will probably cause a linking failure
Warning: "crtbegin.o" not found, this will probably cause a linking failure
Warning: "crtend.o" not found, this will probably cause a linking failure
Warning: "crtn.o" not found, this will probably cause a linking failure
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: warning: ./Build/link.res contains output sections; did you forget -T?
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: cannot find -lSDL
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: cannot find -lpthread
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: cannot find -ldl
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: cannot find -lrt
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: cannot find -lcrypt
/usr/lib/codetyphon/fpc/bin/x86_64-linux/i386-linux-ld: cannot find -lc
Error: Error while linking
Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Last edited by Dragon on Tue Mar 11, 2014 8:49 pm, edited 1 time in total.
Now the compiler works but the linker fails.
I believe this is because you don't have the 32-bit versions of the libraries that ZGE links to.
For instance when it says "cannot find -lSDL " try installing 32-bit SDL and see if it helps: http://www.libsdl.org/download-1.2.php
I believe this is because you don't have the 32-bit versions of the libraries that ZGE links to.
For instance when it says "cannot find -lSDL " try installing 32-bit SDL and see if it helps: http://www.libsdl.org/download-1.2.php