I'm having a hell of a time trying to install ICE-PHP as well.
I have a Linux CentOS 6 with cPanel & WHM.
Because of the cPanel & WHM installation I am unable to run yum install ice-php, since cPanel doesn't use yum for the PHP installation.
I have been able to extract IcePHP.so through using yum and then rebuilding my apache through the WHM, but when I move it to the apache folder it will not work with my version of PHP.
I have also tried to do a source build of Ice & IcePHP but I have had no luck with either.
Working with the latest Source Build: http://www.zeroc.com/download/Ice/3.5/Ice-3.5.1.zip
Currently I am trying to build Ice-3.5.1 and it is failing on:
making all in demo
make: Entering directory `/builds/Ice-3.5.1/cpp/demo'
make: *** No rule to make target `all'. Stop.
make: Leaving directory `/builds/Ice-3.5.1/cpp/demo'
make: *** [all] Error 1
Trying to Make IcePHP:
make: *** No targets specified and no makefile found. Stop.
I also installed Ice-3.5.0 and was able to build the cpp as expected. Running "make" in the PHP folder always fails due to not being able to find the right PHP install folder.
Running: locate php.h
I tried PHP_HOME=/usr/local/
as well as a bunch of other folders with the returned options and none seem to work.
I noticed on the Platform Page: http://www.zeroc.com/platforms_3_5_1.html
That IcePHP is only supported with PHP v. 3.* ?? Does this mean it wont work with any newer versions?
Any help would be greatly appreciated!
I was finally able to build it by setting export PHP_HOME=/usr/local/ the conf/Make.rules.php doesn't work as i'd expected.
I also had to set LD_LIBRARY_PATH=/opt/Ice-3.5.0/lib64 (instead of the lib file they suggested - located libIce.so.35 with ls -LR $ICE_HOME - Reference: http://www.zeroc.com/forums/help-center ... panel.html
After I make && make install IcePHP.so appeared in $ICE_HOME/php so I copied it to the PHP Module Extensions
[/builds/Ice-3.5.0/php]# ldd /usr/local/lib/php/extensions/no-debug-non-zts-20100525/IcePHP.so
linux-vdso.so.1 => (0x00007fff546cf000)
libIce.so.35 => /opt/Ice-3.5.0/lib64/libIce.so.35 (0x00007ff2d5213000)
libSlice.so.35 => /opt/Ice-3.5.0/lib64/libSlice.so.35 (0x00007ff2d4d97000)
libIceUtil.so.35 => /opt/Ice-3.5.0/lib64/libIceUtil.so.35 (0x00007ff2d4b1e000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff2d48f5000)
librt.so.1 => /lib64/librt.so.1 (0x00007ff2d46ec000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007ff2d43e6000)
libm.so.6 => /lib64/libm.so.6 (0x00007ff2d4162000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ff2d3f4b000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff2d3bb7000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007ff2d39a6000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ff2d37a1000)
[/builds/Ice-3.5.0/php]# service httpd restart
But in My Apache Error Log I still get:
[03-Feb-2014 08:00:55 UTC] PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-non-zts-20100525/IcePHP.so' - libIce.so.35: cannot open shared object file: No such file or directory in Unknown on line 0
Even tho it clearly exists:
[/builds/Ice-3.5.0/php]# ls /opt/Ice-3.5.0/lib64/libIce.so.35
Anyone have any ideas? I have done an apache restart.
**** UPDATE COMPLETED
So I found a few issues I had:
1. I had the extension=IcePHP.so at the top of the php.ini instead of at the bottom (which made it not load properly)
2. edit the export = in your ~/.bash_profile:
IF you don't edit it here, when you signout & back in the settings are gone.
3. I missed a step in the mumble docs: http://mumble.sourceforge.net/Ice
Basically you need to edit the PHP.ini include_path to: include_path = ".:/usr/lib/php:/usr/local/lib/php:/opt/Ice-3.5.0/lib"
After 3 Days of attempting to get this to work, I finally have it!