3

I'm trying to install stomp php extension via pecl on Fedora 16 server. On centos I have similar problem but after installing openssl-devel everything went well and I installed stomp. On Fedora server (openssl, openssl-devel installed) I'm getting:


pecl install stomp
downloading stomp-1.0.4.tgz ...
Starting to download stomp-1.0.4.tgz (18,354 bytes)
......done: 18,354 bytes
6 source files, building
running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
OpenSSL install prefix (no to disable SSL support) [/usr] : /usr
building in /var/tmp/pear-build-root2Uodkk/stomp-1.0.4
running: /var/tmp/stomp/configure --with-openssl-dir=/usr
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib
checking for PHP extension directory... /usr/lib64/php/modules
checking for PHP installed headers prefix... /usr/include/php
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... re2c
checking for re2c version... 0.13.5 (ok)
checking for gawk... gawk
checking whether to enable stomp support... yes, shared
checking OpenSSL dir for stomp... /usr
checking for pkg-config... /usr/bin/pkg-config
configure: error: Cannot find OpenSSL's libraries
ERROR: `/var/tmp/stomp/configure --with-openssl-dir=/usr' failed
  

My first thought openSSL install prefix is wrong but the same prefix worked just fine on centos??

I have openssl php extension also installed.

EDIT: some more info:

PHP Version => 5.3.18

php-pear-1.9.4

PHP modules installed: gd gettext gmp hash iconv imap json ldap libxml mbstring mcrypt memcache mhash mongo mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar readline Reflection session shmop SimpleXML soap sockets SPL sqlite3 standard tidy tokenizer wddx xapian xml xmlreader xmlwriter xsl zip zlib

Maybe I forget about something. Have no idea what to do because the proper openssl and openssl-devel are installed. Any ideas?

2 Answers 2

4

To correctly install stomp extension (with pecl) on systems where openssl is not on the expected /usr but is nevertheless reacheable system wide, instead of specifying a folder for finding the libraries, just type "yes".

ref: https://bugs.php.net/bug.php?id=63935

This will force the system to find the system default.

If you use manual compilation, just state "--with-openssl" instead of adding also an "=" after it:

ref: https://bugs.php.net/bug.php?id=25703&edit=2

1
  • Lol... so simple solution... putting yes instead of writing the dir works like a charm... many thx
    – B14D3
    Mar 12, 2013 at 10:11
0

In the case of CentOS 6.3 and

openssl-1.0.0-25.el6_3.1.x86_64 openssl-devel-1.0.0-25.el6_3.1.x86_64

You may have to create links in the /usr/lib directory if pecl install stomp throws an error:

checking for pkg-config... /usr/bin/pkg-config
configure: error: Cannot find OpenSSL's libraries
ERROR: `/var/tmp/stomp/configure --with-openssl-dir=/usr' failed

puppet recipe to overcome

# Handle pecl install error on x86_64 CentOS 6.3
  if $architecture == 'x86_64' {
    file {'/usr/lib/libssl.so':
      ensure  => link,
      target  => '/usr/lib64/libssl.so',
      require => Package['openssl', 'openssl-devel'],
      before  => Exec['install_pecl_stomp'],
    }
    file {'/usr/lib/libcrypto.so':
      ensure  => link,
      target  => '/usr/lib64/libcrypto.so',
      require => Package['openssl', 'openssl-devel'],
      before  => Exec['install_pecl_stomp'],
    }
    $pecl_lib_dir = 'lib64'
  } else {
    $pecl_lib_dir = 'lib'
  }

  exec {'install_pecl_stomp':
    command => 'printf "/usr" | pecl install stomp',
    creates => "/usr/${pecl_lib_dir}/php/modules/stomp.so",
    require => Package['php', 'openssl', 'openssl-devel'],
  }
1
  • 1
    Correct me if I'm wrong, but aren't CentOS and Fedora different distros? Makes me wonder what relevance this has to the question. Dec 17, 2012 at 20:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .