Couldn't compile IcePHP properly after i have ICE setup via yum(centos 5)

in Help Center
Hi guys,
I am having some problem compiling icephp.
I have install ICE using yum as describe over at http://www.zeroc.com/download.html on my centos 5 server.
I went to run
in my icePHP directory, i run the following command and follow by "make"
"make" generate the following error:
Doing a "locate" show that ice is install at:
/usr/share/Ice-3.3.1
Any idea what is wrong?
I am having some problem compiling icephp.
I have install ICE using yum as describe over at http://www.zeroc.com/download.html on my centos 5 server.
I went to run
in my icePHP directory, i run the following command and follow by "make"
[[email protected] IcePHP-3.2.0]# export ICE_HOME=/usr
"make" generate the following error:
[[email protected] IcePHP-3.2.0]# make making all in src make[1]: Entering directory `/root/IcePHP-3.2.0/src' making all in IcePHP make[2]: Entering directory `/root/IcePHP-3.2.0/src/IcePHP' c++ -c -I. -I/usr/include -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/Zend -I/usr/include/php/TSRM -ftemplate-depth-128 -Wall -D_REENTRANT -fPIC -g Communicator.cpp Communicator.cpp:10:37: error: IceUtil/DisableWarnings.h: No such file or directory In file included from ./Communicator.h:13, from Communicator.cpp:11: ./Config.h:19:21: error: Ice/Ice.h: No such file or directory ./Config.h:20:26: error: Slice/Parser.h: No such file or directory ./Config.h:32:17: error: php.h: No such file or directory ./Config.h:33:21: error: php_ini.h: No such file or directory ./Config.h:34:31: error: ext/standard/info.h: No such file or directory ./Config.h:35:29: error: zend_interfaces.h: No such file or directory ./Config.h:36:29: error: zend_exceptions.h: No such file or directory ./Config.h:42: error: 'zend_module_entry' does not name a type ./Config.h:55: error: expected constructor, destructor, or type conversion before '(' token ./Config.h:56: error: expected constructor, destructor, or type conversion before '(' token ./Config.h:57: error: expected constructor, destructor, or type conversion before '(' token ./Config.h:58: error: expected constructor, destructor, or type conversion before '(' token ./Config.h:59: error: expected constructor, destructor, or type conversion before '(' token ./Config.h:61: error: expected constructor, destructor, or type conversion before '(' token ./Config.h:67: error: expected constructor, destructor, or type conversion before '(' token ./Communicator.h:47: error: 'TSRMLS_D' was not declared in this scope ./Communicator.h:49: error: 'TSRMLS_D' was not declared in this scope ./Communicator.h:50: error: 'Ice' has not been declared ./Communicator.h:50: error: expected constructor, destructor, or type conversion before 'getCommunicator' ./Communicator.h:51: error: expected constructor, destructor, or type conversion before '*' token ./Proxy.h:20: error: expected constructor, destructor, or type conversion before '(' token
Doing a "locate" show that ice is install at:
/usr/share/Ice-3.3.1
Any idea what is wrong?
0
Comments
You're not using the correct IcePHP version to compile with Ice 3.3.1. You should instead use the IcePHP source from the Ice-3.3.1 source distribution (since Ice 3.3.0, we no longer provide a separate package for IcePHP, it's now included in the main Ice source distribution).
You can download the Ice source distribution from our download page.
To build IcePHP using the Ice binary distribution installed in /usr, you can do the following:
Before starting the build, you should also review the settings from the Ice-3.3.1/php/config/Make.rules file, see php/INSTALL for more information.
Cheers,
Benoit.
I got this message when try to run "make"
i know i have install ICE via yum on the server. why it couldn't find slice2cpp?
Hello,
nope. there isn't any slice2cpp in /usr/bin
so strange.
BTW, why do you want to compile from source anyway? There is an php RPM available pre-compiled for this platform (ice-php-3.3.1).
Thanks for your reply.
I have slice2cpp in my /usr/bin now.
When i run "make", it give me the following error:
I know i have php on my server:
Best regards,
Bernard
ah, i see.
finally got passed the "make install".
I went to restart apache and run "php -m" .
ice isn't listed.
Am i using the correct method to check?
*fainted* that could have save a day of my hardwork.
If you don't see the ice section among the configuration information, the plugin is not installed correctly. In that case, you should check your Apache log file, and see what the issue is. Most likely the problem is that the Ice shared libraries are not accessible for some reason (permissions, wrong location, etc).