Posts: 4
Threads: 1
Joined: Jul 2012
Thanks: 1
Given 0 thank(s) in 0 post(s)
07-19-2012, 10:32 PM
(This post was last modified: 07-19-2012, 10:33 PM by fiftyseven.)
I'm new to this project, and when compiling for the first time on gcc 4.4.5 using the makefile.release, I got this error a bunch of times:
'undefined reference to cBlockHandler::GetBlockHandler(char)'
In the source I found cBlockHandler::GetBlockHandler(BLOCKTYPE a_BlockID), so I'm guessing this is some kind of casting problem?
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1075 thank(s) in 852 post(s)
Hi, welcome to the project.
makefile is hopelessly outdated, ask your buildsystem to use GNUmakefile (GNU make does this by default). Probably the build will work if you just delete all makefile*.* files (svn can restore them for you if that didn't help).
If the problem stays, tell us more about your configuration - what OS, what build toolchain etc.
Posts: 4
Threads: 1
Joined: Jul 2012
Thanks: 1
Given 0 thank(s) in 0 post(s)
Thanks for the help, I used the GNUmakefile instead and it worked perfectly. I now have a minecraft server running on a raspberry pi!
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1075 thank(s) in 852 post(s)
Wow, really? They said it didn't compile / run on Raspberry Pi, but none of us could get a hand on a working simulator, let alone the real device, so we never had the chance to fix things.
I suspect there's gonna be need for a lot of fine-tuning for the RasPi though, especially the memory management. But this is a great start!
Posts: 4
Threads: 1
Joined: Jul 2012
Thanks: 1
Given 0 thank(s) in 0 post(s)
I just used the debian distro the Raspberry Pi people recommend, and used the GCC version it came with, and compiled it with 'make release=1'.
I didn't have much time to test it, but there's a few wierd things I noticed, first of all the monsters don't seem to do anything except stand in one spot and jump, and secondly, it takes nearly ten minutes to join the server. It just says 'Downloading terrain' on the client and the server output says its generating chunks the whole time. It also takes a very long time to generate the map on first startup but I'm assuming thats just because the processor is slow.
Posts: 4
Threads: 1
Joined: Jul 2012
Thanks: 1
Given 0 thank(s) in 0 post(s)
It took that long the second and third times too. After turning the server off and restarting, I now can't join at all. I first get this:
[42dde460|21:06:50] ERROR READING m_PakVersion FROM FILE world/X1_Z-1.pak (line 350); file offset 0
And then this:
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::erase
Server then shuts off.
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1075 thank(s) in 852 post(s)
07-21-2012, 01:30 AM
(This post was last modified: 07-21-2012, 01:33 AM by xoft.)
Looks like some file error, the server wasn't able to read data from a file, or more probably, write the data there in the first place.
First try changing the storage schema in world.ini to Anvil (see the wiki for details on how to do that). If that doesn't help, look in the region folder inside your world folder, if the MCA files there are both readable and writable by the server. If there are no files, the server probably has no rights to write to that folder. If the files are of zero size, there's some other problem. If the files appear normal, no idea then. It is possible that RasPi uses some kind of filesystem / CRT combination that we don't support fully.
I'm also wondering, is it possible to run the server under gdb on the device? (my emulator doesn't seem to support that) And even better, gprof? That could tell us about some bottlenecks the server's facing on RasPi.