Archived

This forum has been archived. Please start a new discussion on GitHub.

Ice and IcePHP for OpenSuse13.1

Hay,

I tried to install ice on my open suse 13.1 server but i can't find an rpm. After that I tried to compile ice.
I used these guide: Ice - Mumble

But my problem is at the last step:
4. At this point, Ice should be available to your language (in this case, Ruby):

 $ irb
 irb(main):001:0> require 'Ice'
 => true

The ouput in my console is:
irb
irb(main):001:0> require 'Ice'
LoadError: libIce.so.35: cannot open shared object file: No such file or directory - /opt/Ice-3.5.1/ruby/IceRuby.so
        from /usr/lib64/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /usr/lib64/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /opt/Ice-3.5.1/ruby/Ice.rb:10:in `<top (required)>'
        from /usr/lib64/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from /usr/lib64/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
        from (irb):1
        from /usr/bin/irb:12:in `<main>'


What is wrong, where is my misstake?

Thanks.

Comments

  • xdm
    xdm La Coruña, Spain
    Hi,

    If you want to build Ice from sources is best to follow our documentation, Building Ice from Source

    As for your error seems you have not configured your environment correctly, see Building Ice for Ruby - Ice 3.5 - ZeroC
  • Hi,

    after a few month , I tried a second time , to build ice and ice -php from source . But make stops withe these output:
    make[3]: Entering directory `/root/rootHome/install/Ice-3.5.1/cpp/test/IceGrid/admin'
    make[3]: Für das Ziel »all« ist nichts zu tun.
    make[3]: Leaving directory `/root/rootHome/install/Ice-3.5.1/cpp/test/IceGrid/admin'
    make[2]: Leaving directory `/root/rootHome/install/Ice-3.5.1/cpp/test/IceGrid'
    make[1]: Leaving directory `/root/rootHome/install/Ice-3.5.1/cpp/test'
    making all in demo
    make[1]: Entering directory `/root/rootHome/install/Ice-3.5.1/cpp/demo'
    make[1]: *** Keine Regel, um »all« zu erstellen.  Schluss.
    make[1]: Leaving directory `/root/rootHome/install/Ice-3.5.1/cpp/demo'
    make: *** [all] Fehler 1
    

    Thanks a lot for helping.
  • matthew
    matthew NL, Canada
    I'm not sure why you get a loop with the make all rule. What version of make are you using?
  • Hay,

    I use make 3.82-160.2.1 from officel OpenSuse repo.
  • matthew
    matthew NL, Canada
    To assist further we need the complete make output in English. Please do something similar to:
    $ script
    $ export LANG=en_US
    $ make -v
    $ make
    $ exit
    

    and then attach the typescript file to this thread?
  • Hay,

    I attached the output of make. Thanks a lot :)

    Attachment not found.
  • xdm
    xdm La Coruña, Spain
    Do you see a "cpp/demo/Makefile" file in your sources, looks like the file has been removed. If that is the case start with a new source archive.

    If the file exists check that is the same as in Ice-3.5.1.tar.gz archive from our download page.

    Otherwise can you run the commands again but with -d to get full debug output
    $ script
    $ export LANG=en_US
    $ make -v
    $ make -d
    $ exit
    
  • Hallo again,

    if I redownload the ice .zip, there is the same error. After that I tried the .tar.gz, and it works.
    To finisch the installation, I used the make install command, but it seems ice doesn't work.
    2015-04-07T09:17:40.510008+00:00 php-fpm[19448]: Starting php-fpm[07-Apr-2015 09:17:40] NOTICE: PHP message: PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php5/extensions/icephp.so' - libIce.so.35: cannot open shared object file: No such file or directory in Unknown on line 0
    
  • xdm
    xdm La Coruña, Spain
    The zip file is intended for Windows usage and doesn't contain all the Unix Makefiles.

    As for your new problem the default installs copy binaries to /opt/Ice-3.5, but PHP will not be able to find libIce.so.35 there unless you add /opt/Ice-3.5/lib64 to your system library path.