{"id":12,"date":"2008-07-24T09:57:10","date_gmt":"2008-07-24T13:57:10","guid":{"rendered":"http:\/\/www.compdigitec.com\/labs\/?p=12"},"modified":"2010-07-21T19:52:43","modified_gmt":"2010-07-22T00:52:43","slug":"install-roadsend-php-compiler-on-ubuntu-without-compiling-anything","status":"publish","type":"post","link":"http:\/\/www.compdigitec.com\/labs\/2008\/07\/24\/install-roadsend-php-compiler-on-ubuntu-without-compiling-anything\/","title":{"rendered":"Install Roadsend PHP Compiler on Ubuntu &#8211; without compiling anything!"},"content":{"rendered":"<p><strong>Update (2010-07-21):<\/strong> Due to vast interest in getting the packages to work, we have released a <a href=\"\/labs\/2010\/07\/21\/updated-roadsend-php-compiler-packages\/\">updated version of the Roadsend PHP compiler<\/a>.<\/p>\n<p><strong>Update (2008-09-06):<\/strong> The binary packages are not AMD64 compatible (thanks to Tom in the comments). You may wish to compile your own packages following the instructions in this article. The binaries are compatible with x86\/i386\/i686\/x86_64 only.<\/p>\n<p><a href=\"http:\/\/www.roadsend.com\">Roadsend PHP<\/a> is an actively developed PHP compiler. Unfortunately, it is not available for the extremely popular <a href=\"http:\/\/www.ubuntu.com\">Ubuntu Linux<\/a>. This post will help you install Roadsend PHP on your Ubuntu Linux machine in  5 easy steps.<\/p>\n<ol>\n<li>If you have the repository (in other words, from synaptic) version of Bigloo and any roadsend packages installed, remove them now.<\/li>\n<li>Install the unofficial <a rel=\"nofollow\" href=\"http:\/\/www.google.com\/search?q=Bigloo&amp;num=100\">Bigloo<\/a> and Roadsend PHP compiler packages: (install unofficial bigloo first)\n<ul>\n<li><a href=\"\/labs\/files\/bigloo-compdigitec-unoffical.deb\">bigloo-compdigitec-unoffical.deb<\/a> &#8211; 13.0M<\/li>\n<li><a href=\"\/labs\/files\/pcc-compdigitec-unoffical.deb\">pcc-compdigitec-unoffical.deb<\/a> &#8211; 4.1M<\/li>\n<\/ul>\n<\/li>\n<li>If you are setting up Roadsend PHP per-user, add this line to each user&#8217;s &#8220;~\/.profile&#8221;. To set Roadsend PHP up system-wide, add it to &#8220;\/etc\/profile&#8221;.<code>export LD_LIBRARY_PATH=\/usr\/local\/lib<\/code><\/li>\n<li>You&#8217;re almost done! Compile a test program to test it:<code>&lt;?php<br \/>\necho \"Hello World! - This is the Roadsend PHP test program.\\n\";<br \/>\n?&gt;<br \/>\n<\/code>Save it in index.php . Then compile it and run it:<br \/>\n<code>pcc index.php<br \/>\n.\/index<\/code><\/p>\n<p>You should get this output: &#8220;Hello World! &#8211; This is the Roadsend PHP test program.&#8221;. If you get this error instead &#8220;.\/index: error while loading shared libraries: libphp-runtime_u-3.0c.so: cannot open shared object file: No such file or directory&#8221;, it means that you have not yet set LD_LIBRARY_PATH as in Step 3. Set it manually by executing:<br \/>\n<code><br \/>\nexport LD_LIBRARY_PATH=\/usr\/local\/lib<\/code><\/li>\n<li>To test the MicroServer backend, compile with the following command:<br \/>\n<code>pcc -s testprog --port 54321 index.php<\/code><br \/>\nTo avoid another fatal error, copy the PHP core runtime with the following command:<br \/>\n<code>cp \/usr\/local\/lib\/libphp-runtime_u-3.0c.so .\/<\/code><br \/>\n.\/index<br \/>\nThen browse to <a href=\"http:\/\/127.0.0.1:54321\/\">http:\/\/127.0.0.1:54321\/<\/a> and you should see &#8220;&#8221;Hello World! &#8211; This is the Roadsend PHP test program.&#8221;<\/li>\n<\/ol>","protected":false},"excerpt":{"rendered":"<p>Update (2010-07-21): Due to vast interest in getting the packages to work, we have released a updated version of the Roadsend PHP compiler. Update (2008-09-06): The binary packages are not AMD64 compatible (thanks to Tom in the comments). You may wish to compile your own packages following the instructions in this article. The binaries are [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3,5],"tags":[30,29,31,34,32,862,33,27,864,26,28],"_links":{"self":[{"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/posts\/12"}],"collection":[{"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/comments?post=12"}],"version-history":[{"count":0,"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/posts\/12\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/media?parent=12"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/categories?post=12"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.compdigitec.com\/labs\/wp-json\/wp\/v2\/tags?post=12"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}