Archived

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

Instalation error

Hello!!

I am trying to install Ice for C++ from the file Ice-2.1.2.tar.gz, and when I type 'makel' I find the next error:

ConnectionI.cpp:28:19: error: bzlib.h: No existe el fichero o el directorio
ConnectionI.cpp: In function 'std::string getBZ2Error(int)':
ConnectionI.cpp:1846: error: 'BZ_RUN_OK' was not declared in this scope
ConnectionI.cpp:1850: error: 'BZ_FLUSH_OK' was not declared in this scope
ConnectionI.cpp:1854: error: 'BZ_FINISH_OK' was not declared in this scope
ConnectionI.cpp:1858: error: 'BZ_STREAM_END' was not declared in this scope
ConnectionI.cpp:1862: error: 'BZ_CONFIG_ERROR' was not declared in this scope
ConnectionI.cpp:1866: error: 'BZ_SEQUENCE_ERROR' was not declared in this scope
ConnectionI.cpp:1870: error: 'BZ_PARAM_ERROR' was not declared in this scope
ConnectionI.cpp:1874: error: 'BZ_MEM_ERROR' was not declared in this scope
ConnectionI.cpp:1878: error: 'BZ_DATA_ERROR' was not declared in this scope
ConnectionI.cpp:1882: error: 'BZ_DATA_ERROR_MAGIC' was not declared in this scope
ConnectionI.cpp:1886: error: 'BZ_IO_ERROR' was not declared in this scope
ConnectionI.cpp:1890: error: 'BZ_UNEXPECTED_EOF' was not declared in this scope
ConnectionI.cpp:1894: error: 'BZ_OUTBUFF_FULL' was not declared in this scope
ConnectionI.cpp: In member function 'void Ice::ConnectionI::doCompress(IceInternal::BasicStream&, IceInternal::BasicStream&)':
ConnectionI.cpp:1919: error: 'BZ2_bzBuffToBuffCompress' was not declared in this scope
ConnectionI.cpp:1920: error: 'BZ_OK' was not declared in this scope
ConnectionI.cpp: In member function 'void Ice::ConnectionI::doUncompress(IceInternal::BasicStream&, IceInternal::BasicStream&)':
ConnectionI.cpp:1977: error: 'BZ2_bzBuffToBuffDecompress' was not declared in this scope
ConnectionI.cpp:1978: error: 'BZ_OK' was not declared in this scope
make[2]: *** [ConnectionI.o] Error 1
make[2]: Leaving directory `/home/david/Aplicaciones/Ice-2.1.2/src/Ice'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/david/Aplicaciones/Ice-2.1.2/src'
make: *** [all] Error 1


Can someone help me?

Thank you very much!

Comments

  • benoit
    benoit Rennes, France
    Hello,

    Please see [thread=1697]this thread[/thread] for our new support policy on the forums.

    Thanks,

    Benoit.
  • xdm
    xdm La Coruña, Spain
    Hello
    ConnectionI.cpp:28:19: error: bzlib.h: No existe el fichero o el directorio

    Your compiler don't found bzlib.h that is a header from bzip2 package that is required to build Ice fron sources read the Requirements in INSTALL files
  • xdm wrote:
    Hello

    Hello again!

    I have the bzip2 package installed in my system (Debian GNU/Linux), but the error mentioned before still persists.
  • benoit
    benoit Rennes, France
    Where is the bzlib.h header file located on your system? If it's installed in a non standard location, you'll need to set the BZIP2_HOME variable in the Ice-2.1.2/config/Make.rules file.

    Also, note that you must install the bzip2 developer package to get this header file.

    Benoit.
  • Thank you for helping me. The problem was that I had not the libbz2-dev package installed. Now I have other problem:

    RSAPublicKey.cpp: In member function 'void IceSSL::RSAPublicKey::byteSeqToCert(const Ice::ByteSeq&)':
    RSAPublicKey.cpp:107: error: invalid conversion from 'unsigned char**' to 'const unsigned char**'
    RSAPublicKey.cpp:107: error: initializing argument 2 of 'X509* d2i_X509(X509**, const unsigned char**, long int)'
    make[2]: *** [RSAPublicKey.o] Error 1
    make[2]: Leaving directory `/home/david/Aplicaciones/Ice-2.1.2/src/IceSSL'
    make[1]: *** [all] Error 1
    make[1]: Leaving directory `/home/david/Aplicaciones/Ice-2.1.2/src'
    make: *** [all] Error 1


    Sorry for being so heavy, and thank you for your time.
  • benoit
    benoit Rennes, France
    It looks like your OpenSSL library differs from the one we're using (0.96 and 0.97). Which OpenSSL version do you use?

    Cheers,
    Benoit.
  • My OpenSSL version is 0.9.8a. I use Debian Sid.
  • benoit
    benoit Rennes, France
    We don't support this OpenSSL version yet. It should be supported in the upcoming Ice version. To get it to compile with 0.9.8, you can try to edit the Ice-2.1.2/src/IceSSL/RSAPublicKey.cpp file and change the following line 102 and 103:
       unsigned char* pubKeyBuff = publicKeyBuffer;
       unsigned char** pubKeyBuffpp = &pubKeyBuff;
    

    To:
       const unsigned char* pubKeyBuff = publicKeyBuffer;
       const unsigned char** pubKeyBuffpp = &pubKeyBuff;
    

    Benoit.