Results 1 to 11 of 11

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

  1. #1
    rolypoly is offline Registered User
    Name: Joseph Tan
    Organization: Mumblevoice
    Project: Voice Auth. application using ICE & ICEPHP
    Join Date
    Apr 2009
    Posts
    7

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

    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"
    Code:
    [root@b IcePHP-3.2.0]# export ICE_HOME=/usr
    "make" generate the following error:


    Code:
    [root@b 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?

  2. #2
    benoit's Avatar
    benoit is offline ZeroC Staff
    Name: Benoit Foucher
    Organization: ZeroC, Inc.
    Project: Ice
    Join Date
    Feb 2003
    Location
    Rennes, France
    Posts
    2,196
    Hi,

    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:
    Code:
    $ tar zxvf Ice-3.3.1.tar.gz
    $ cd Ice-3.3.1/php
    $ export ICE_HOME=/usr
    $ make
    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.

  3. #3
    rolypoly is offline Registered User
    Name: Joseph Tan
    Organization: Mumblevoice
    Project: Voice Auth. application using ICE & ICEPHP
    Join Date
    Apr 2009
    Posts
    7
    Hello,

    I got this message when try to run "make"
    Code:
    [root@b Ice-3.3.1]# cd php
    [root@b php]# export ICE_HOME=/usr
    [root@b php]#
    [root@b php]# make
    ../config/Make.common.rules:109: *** Unable to find slice2cpp in /usr/bin, please verify ICE_HOME is properly configured and Ice is correctly installed..  Stop.
    i know i have install ICE via yum on the server. why it couldn't find slice2cpp?

  4. #4
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    Is slice2cpp in /usr/bin?

  5. #5
    rolypoly is offline Registered User
    Name: Joseph Tan
    Organization: Mumblevoice
    Project: Voice Auth. application using ICE & ICEPHP
    Join Date
    Apr 2009
    Posts
    7
    Quote Originally Posted by matthew View Post
    Is slice2cpp in /usr/bin?
    Hello,

    nope. there isn't any slice2cpp in /usr/bin



    so strange.

  6. #6
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    Then you haven't installed the C++ development environment. Install the ice-c++-devel-3.3.1 RPM.

    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).

  7. #7
    rolypoly is offline Registered User
    Name: Joseph Tan
    Organization: Mumblevoice
    Project: Voice Auth. application using ICE & ICEPHP
    Join Date
    Apr 2009
    Posts
    7
    Hi Matt,

    Thanks for your reply.

    I have slice2cpp in my /usr/bin now.

    When i run "make", it give me the following error:

    Code:
    [root@b php]# make
    ../config/Make.common.rules:112: Found slice2cpp in both ICE_HOME/bin and ./../cpp/bin, ICE_HOME/bin/slice2cpp will be used!
    making all in src
    make[1]: Entering directory `/root/Ice-3.3.1/php/src'
    ../../config/Make.common.rules:112: Found slice2cpp in both ICE_HOME/bin and ../../cpp/bin, ICE_HOME/bin/slice2cpp will be used!
    making all in IcePHP
    make[2]: Entering directory `/root/Ice-3.3.1/php/src/IcePHP'
    ../../../config/Make.common.rules:112: Found slice2cpp in both ICE_HOME/bin and ../../../cpp/bin, ICE_HOME/bin/slice2cpp will be used!
    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 -I/usr/include/nptl -fPIC -g  Communicator.cpp
    In file included from ./Communicator.h:13,
                     from Communicator.cpp:11:
    ./Config.h:40:17: error: php.h: No such file or directory
    ./Config.h:41:21: error: php_ini.h: No such file or directory
    ./Config.h:42:31: error: ext/standard/info.h: No such file or directory
    ./Config.h:43:29: error: zend_interfaces.h: No such file or directory
    ./Config.h:44:29: error: zend_exceptions.h: No such file or directory
    ./Config.h:50: error: 'zend_module_entry' does not name a type
    ./Config.h:63: error: expected constructor, destructor, or type conversion before '(' token
    ./Config.h:64: error: expected constructor, destructor, or type conversion before '(' token
    ./Config.h:65: error: expected constructor, destructor, or type conversion before '(' token
    ./Config.h:66: error: expected constructor, destructor, or type conversion before '(' token
    ./Config.h:67: error: expected constructor, destructor, or type conversion before '(' token
    ./Config.h:69: error: expected constructor, destructor, or type conversion before '(' token
    ./Config.h:75: error: expected constructor, destructor, or type conversion before '(' token
    ./Communicator.h:51: error: expected constructor, destructor, or type conversion before '(' token
    ./Communicator.h:52: error: expected constructor, destructor, or type conversion before '(' token
    ./Communicator.h:62: error: 'TSRMLS_D' was not declared in this scope
    ./Communicator.h:64: error: 'TSRMLS_D' was not declared in this scope
    ./Communicator.h:65: error: 'TSRMLS_D' was not declared in this scope
    ./Communicator.h:66: error: expected constructor, destructor, or type conversion before '*' token
    ./Proxy.h:20: error: expected constructor, destructor, or type conversion before '(' token
    ./Proxy.h:21: error: expected constructor, destructor, or type conversion before '(' token.
    .
    .
    
    ./Proxy.h:153: error: 'TSRMLS_D' was not declared in this scope
    ./Proxy.h:155: error: 'zval' was not declared in this scope
    ./Proxy.h:155: error: expected primary-expression before ',' token
    ./Proxy.h:155: error: expected primary-expression before 'const'
    ./Proxy.h:155: error: initializer expression list treated as compound expression
    ./Proxy.h:156: error: redefinition of 'bool IcePHP::createProxy'
    ./Proxy.h:155: error: 'bool IcePHP::createProxy' previously defined here
    ./Proxy.h:156: error: 'zval' was not declared in this scope
    ./Proxy.h:156: error: expected primary-expression before ',' token
    ./Proxy.h:156: error: expected primary-expression before 'const'
    ./Proxy.h:156: error: expected primary-expression before 'const'
    I know i have php on my server:

    Code:
    [root@b php]# php -v
    PHP 5.1.6 (cli) (built: Apr  7 2009 08:00:04)
    Copyright (c) 1997-2006 The PHP Group
    Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

  8. #8
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    Your work is not complete yet though You need to install the php-devel RPM to build PHP extensions.

  9. #9
    bernard's Avatar
    bernard is offline ZeroC Staff
    Name: Bernard Normier
    Organization: ZeroC, Inc.
    Project: Ice
    Join Date
    Feb 2003
    Location
    Palm Beach Gardens, FL
    Posts
    1,294
    Also, why not use the ice-php RPM on this system?

    Code:
     # yum install ice-php
    Best regards,
    Bernard
    Bernard Normier
    ZeroC, Inc.

  10. #10
    rolypoly is offline Registered User
    Name: Joseph Tan
    Organization: Mumblevoice
    Project: Voice Auth. application using ICE & ICEPHP
    Join Date
    Apr 2009
    Posts
    7
    Quote Originally Posted by matthew View Post
    Your work is not complete yet though You need to install the php-devel RPM to build PHP extensions.
    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?


    Quote Originally Posted by bernard View Post
    Also, why not use the ice-php RPM on this system?

    Code:
     # yum install ice-php
    Best regards,
    Bernard
    *fainted* that could have save a day of my hardwork.

  11. #11
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    From the INSTALL file

    You can verify that the Ice extension is installed properly by
    examining the output of the "php -m" command, or by calling the
    phpInfo() function from a script. For example, you can create a file
    in the Web server's document directory containing the following PHP
    script:

    <?php
    phpInfo();
    ?>
    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).

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Compile 3.3.1 on centos 5.5
    By criminala in forum Help Center
    Replies: 8
    Last Post: 04-02-2011, 05:54 AM
  2. couldn't compile IcePHP (Ice 3.3.1) with php 5.3.0
    By nickfan in forum Help Center
    Replies: 5
    Last Post: 11-08-2009, 11:42 AM
  3. Compile IcePHP
    By deStrO in forum Help Center
    Replies: 3
    Last Post: 09-29-2008, 03:35 AM
  4. IcePHP doesn't work (nor compile) with PHP 5.1.4
    By g00fy in forum Bug Reports
    Replies: 0
    Last Post: 06-19-2006, 03:05 AM
  5. a IcePHP compile error
    By nightsuns in forum Help Center
    Replies: 3
    Last Post: 11-29-2005, 05:41 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •