= Introduction = [https://www.pocketmine.net/ PocketMine] is an open source server for playing [https://minecraft.net/ MineCraft Pocket Edition (MCPE)] is available on iOS and android. Important: This guide is for developers if you simply like to run PocketMine on Windows or Linux look at [https://www.pocketmine.net/#get their website]. This guide is intended to get PocketMine to work from Git for use with iOS client MineCraft PE v0.14.0. The server software being using is [http://freebsd.org FreeBSD]. I am running it inside a [wiki:FreeBSDJail] rzplay# svn co http://svn.freebsd.org/ports/head /usr/ports = Update few outdated ports = {{{ rvdzwet@rzplay:/home/rvdzwet % svn diff /usr/ports/textproc/pecl-yaml Index: /usr/ports/textproc/pecl-yaml/Makefile =================================================================== --- /usr/ports/textproc/pecl-yaml/Makefile (revision 409208) +++ /usr/ports/textproc/pecl-yaml/Makefile (working copy) @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= yaml -PORTVERSION= 1.2.0 +PORTVERSION= 2.0.0RC7 CATEGORIES= textproc pear MASTER_SITES= http://pecl.php.net/get/ PKGNAMEPREFIX= pecl- @@ -20,6 +20,5 @@ USE_PHP= yes USE_PHP_BUILD= yes USE_PHPEXT= yes -IGNORE_WITH_PHP= 70 .include Index: /usr/ports/textproc/pecl-yaml/distinfo =================================================================== --- /usr/ports/textproc/pecl-yaml/distinfo (revision 409208) +++ /usr/ports/textproc/pecl-yaml/distinfo (working copy) @@ -1,2 +1,2 @@ -SHA256 (PECL/yaml-1.2.0.tgz) = fdf0eec6bf16b0c45e58076a2048f96140a778463724fb82ab49ab5fb4c7e19a -SIZE (PECL/yaml-1.2.0.tgz) = 38606 +SHA256 (PECL/yaml-2.0.0RC7.tgz) = d49acf2b7843258957a16df0d7ced56c0e1fc3eaa54f54289e4012edc002814c +SIZE (PECL/yaml-2.0.0RC7.tgz) = 38233 }}} {{{ rvdzwet@rzplay:/home/rvdzwet % svn diff /usr/ports/devel/pecl-pthreads Index: /usr/ports/devel/pecl-pthreads/Makefile =================================================================== --- /usr/ports/devel/pecl-pthreads/Makefile (revision 409208) +++ /usr/ports/devel/pecl-pthreads/Makefile (working copy) @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= pthreads -PORTVERSION= 2.0.10 +PORTVERSION= 3.1.6 CATEGORIES= devel MASTER_SITES= http://pecl.php.net/get/ PKGNAMEPREFIX= pecl- Index: /usr/ports/devel/pecl-pthreads/distinfo =================================================================== --- /usr/ports/devel/pecl-pthreads/distinfo (revision 409208) +++ /usr/ports/devel/pecl-pthreads/distinfo (working copy) @@ -1,2 +1,2 @@ -SHA256 (PECL/pthreads-2.0.10.tgz) = 8bdf8d8918680421ca0ced1e62292eeb626f800a808d0a3b6812841756588cf6 -SIZE (PECL/pthreads-2.0.10.tgz) = 85247 +SHA256 (PECL/pthreads-3.1.6.tgz) = bb13da909a7a7ae1f9e499166103a2d24628993238ce03a8aae3eaa492c0b736 +SIZE (PECL/pthreads-3.1.6.tgz) = 80932 }}} = Compile PHP from ports as ZTS feature is needed for pthreads = rzplay# pkg delete 'php7*' rzplay# make -C /usr/ports/lang/php70 WITH=ZTS deinstall reinstall rzplay# make -C /usr/ports/devel/pecl-pthreads deinstall reinstall rzplay# make -C /usr/ports/archivers/php70-phar deinstall reinstall rzplay# make -C /usr/ports/archivers/php70-zlib deinstall reinstall rzplay# make -C /usr/ports/databases/php70-sqlite3 deinstall reinstall rzplay# make -C /usr/ports/textproc/pecl-yaml deinstall reinstall rzplay# make -C /usr/ports/ftp/php70-curl deinstall reinstall rzplay# make -C /usr/ports/lang/php70-extensions config rzplay# make -C /usr/ports/net/php70-sockets deinstall reinstall rzplay# make -C /usr/ports/math/php70-bcmath deinstall reinstall rzplay# make -C /usr/ports/devel/php70-json deinstall reinstall = Add some more standard packages = rzplay# pkg install git bash subversion = Checkout Source Code and dependencies = rzplay% git clone https://github.com/PocketMine/PocketMine-MP rzplay% ( cd PocketMine-MP/src/spl ; git submodule init; git submodule update ) = All done, let's start the server = rzplay% bash ./PocketMine-MP/start.sh -p /usr/local/bin/php = (Optional) automatic starting of application = Since it is interactive I like to start it in a screen session on boot by including it into crontab rzplay% crontab -e {{{ @reboot $HOME/start-pocketmine.sh }}} {{{ rzplay% cat < $HOME/start-pocketmine.sh /usr/local/bin/screen -S PocketMine -d -m bash $HOME/PocketMine-MP/start.sh -p /usr/local/bin/php EOF }}} rzplay% chmod 755 $HOME/start-pocketmine.sh Questions and/or Comments? Please send them to [mailto:info@rickvanderzwet.nl me]