#17702 [Opn]: need to use -taso with Netscape LDAP libs
| From: | sniper@php.net | Date: | Wed, 21 Aug 2002 01:33:30 +0000 |
| Subject: | #17702 [Opn]: need to use -taso with Netscape LDAP libs | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-17384@lists.php.net to get a copy of this message | ||
ID: 17702
Updated by: sniper@php.net
Reported By: long@kestrel.cc.ukans.edu
Status: Open
Bug Type: Compile Failure
Operating System: Compaq Tru64 4.0F PK3
-PHP Version: 4.2.1
+PHP Version: 4.3.0-dev
New Comment:
Previous Comments:
------------------------------------------------------------------------
[2002-08-20 17:08:53] long@kestrel.cc.ukans.edu
When I configure as:
env CFLAGS="-std1 -taso" CC=cc CXX=cxx ./configure --with-openssl
--enable-bcmath --with-ndbm --with-dbm --enable-dbase --enable-filepro
--enable-ftp --with-gd --with-ttf --with-java=/usr/opt/java130
--with-mysql --with-oci8 --with-oracle --enable-shmop --enable-sockets
--enable-sysvsem --enable-sysvshm --enable-wddx --enable-dba=shared
--enable-calendar --enable-exif --enable-discard-path --enable-dbx
--enable-ctype --with-hyperwave --enable-mailparse --enable-mbstring
--enable-mbstr-enc-trans --enable-memory-limit
--with-ldap=/usr/local/ldap
Then in my config.log I get:
configure:65780: checking for standard DES crypt
configure:65806: cc -o conftest -std1 -taso
-Wl,-rpath,/usr/local/ssl/lib -L/usr/local/ssl/lib
-Wl,-rpath,/usr/local/lib -L/usr/local/lib
-Wl,-rpath,/usr/opt/java130/jre/lib/alpha/classic
-L/usr/opt/java130/jre/lib/alpha/classic
-Wl,-rpath,/usr/opt/java130/jre/lib/alpha/native_threads
-L/usr/opt/java130/jre/lib/alpha/native_threads
-Wl,-rpath,/usr/opt/java130/jre/lib/alpha
-L/usr/opt/java130/jre/lib/alpha -Wl,-rpath,/usr/local/ldap/lib
-L/usr/local/ldap/lib
-Wl,-rpath,/home/oracle/u01/app/oracle/product/8.0.5/lib
-L/home/oracle/u01/app/oracle/product/8.0.5/lib conftest.c -lclntsh
-lpsa -lcore4 -lnlsrtl3 -lclntsh -lpsa -lcore4 -lnlsrtl3 -lldapssl30
-ljava -lgd -lttf -lssl -lcrypto -lm -lexc -lmld -lrt -laio -lm -lexc
-lmld -lrt -laio -lm 1>&5
configure: failed program was:
#line 65791 "configure"
#include "confdefs.h"
#if HAVE_CRYPT_H
#include <crypt.h>
#endif
main() {
#if HAVE_CRYPT
exit (strcmp((char
*)crypt("rasmuslerdorf","rl"),"rl.3StKT.4T8M"));
#else
exit(0);
#endif
}
and the output to the screen is:
checking for standard DES crypt... 30302:./conftest: /sbin/loader:
Fatal Error: cannot map libldapssl30.so
no
It is failing because the Compaq C compiler does not like having
separate -Wl,-rpath components. It wants all the rpaths combined into
a single unit, e.g.:
-Wl,-rpath,/usr/local/ssl/lib,/usr/local/lib,-rpath,/usr/opt/java130/jre/lib/alpha/classic,/usr/opt/java130/jre/lib/alpha/native_threads,/usr/opt/java130/jre/lib/alpha,/usr/local/ldap/lib,/home/oracle/u01/app/oracle/product/8.0.5/lib
------------------------------------------------------------------------
[2002-08-20 16:19:24] long@kestrel.cc.ukans.edu
As requested in bug 13814 I'd like to report that php4-200208201200
still won't compile the oci8 extension without using -std1 in the
CFLAGS when the Compaq C V5.9-010 compiler is used with the Oracle
8.0.5 client.
------------------------------------------------------------------------
[2002-07-07 21:23:59] sniper@php.net
Please try this snapshot:
http://snaps.php.net/php4-latest.tar.gz
Some related bugs were fixed 2 days ago.
------------------------------------------------------------------------
[2002-07-03 10:29:08] long@kestrel.cc.ukans.edu
Still not quite right, here's a part of the output from:
env LD='/usr/bin/ld -taso' CFLAGS=-taso CC=cc CXX=cxx ./configure
--with-openssl --enable-bcmath --with-ndbm --with-dbm --enable-dbase
--enable-filepro --enable-ftp --with-gd --with-ttf
--with-java=/usr/opt/java130 --with-ldap=/usr/local/ldap --with-mysql
--with-oci8 --with-oracle --enable-shmop --enable-sockets
--enable-sysvsem --enable-sysvshm --enable-wddx --enable-dba=shared
--enable-calendar --enable-exif --enable-discard-path --enable-dbx
--enable-ctype --with-hyperwave --enable-mailparse --enable-mbstring
--enable-mbstr-enc-trans --enable-memory-limit
checking whether pwrite works without custom declaration...
10346:./conftest: /sbin/loader: Fatal Error: cannot map
libldapssl30.so
no
Here's the corresponding portion of config.log:
configure:61711: checking whether pwrite works without custom
declaration
configure:61724: cc -c -taso conftest.c 1>&5
cc: Error: configure, line 61720: In the initializer for func, "pwrite"
is not declared. (undeclared)
size_t (*func)() = pwrite
-------------------^
configure: failed program was:
#line 61717 "configure"
#include "confdefs.h"
#include <unistd.h>
int main() {
size_t (*func)() = pwrite
; return 0; }
configure:61749: cc -o conftest -taso -Wl,-rpath,/usr/local/ssl/lib
-L/usr/local/ssl/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib
-Wl,-rpath,/usr/opt/java130/./jre/lib/alpha/classic
-L/usr/opt/java130/./jre/lib/alpha/classic
-Wl,-rpath,/usr/opt/java130/./jre/lib/alpha/native_threads
-L/usr/opt/java130/./jre/lib/alpha/native_threads
-Wl,-rpath,/usr/opt/java130/./jre/lib/alpha
-L/usr/opt/java130/./jre/lib/alpha -Wl,-rpath,/usr/local/ldap/lib
-L/usr/local/ldap/lib
-Wl,-rpath,/home/oracle/u01/app/oracle/product/8.0.5/lib
-L/home/oracle/u01/app/oracle/product/8.0.5/lib conftest.c -lclntsh
-lpsa -lcore4 -lnlsrtl3 -lm -laio -lrt -lmld -lexc -lclntsh -lpsa
-lcore4 -lnlsrtl3 -lm -laio -lrt -lmld -lexc -lldapssl30 -ljava -lgd
-lttf -lssl -lcrypto -lresolv -lm -lresolv 1>&5
configure: failed program was:
#line 61740 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
main() { return !(pwrite(open("conftest_out", O_WRONLY|O_CREAT,
0600), "Ok", 2, 0) == 2); }
configure:61774: cc -o conftest -taso -Wl,-rpath,/usr/local/ssl/lib
-L/usr/local/ssl/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib
-Wl,-rpath,/usr/opt/java130/./jre/lib/alpha/classic
-L/usr/opt/java130/./jre/lib/alpha/classic
-Wl,-rpath,/usr/opt/java130/./jre/lib/alpha/native_threads
-L/usr/opt/java130/./jre/lib/alpha/native_threads
-Wl,-rpath,/usr/opt/java130/./jre/lib/alpha
-L/usr/opt/java130/./jre/lib/alpha -Wl,-rpath,/usr/local/ldap/lib
-L/usr/local/ldap/lib
-Wl,-rpath,/home/oracle/u01/app/oracle/product/8.0.5/lib
-L/home/oracle/u01/app/oracle/product/8.0.5/lib conftest.c -lclntsh
-lpsa -lcore4 -lnlsrtl3 -lm -laio -lrt -lmld -lexc -lclntsh -lpsa
-lcore4 -lnlsrtl3 -lm -laio -lrt -lmld -lexc -lldapssl30 -ljava -lgd
-lttf -lssl -lcrypto -lresolv -lm -lresolv 1>&5
cc: Error: configure, line 61769: Ill-formed parameter type list.
(parmtyplist)
ssize_t pwrite(int, void *, size_t, off64_t);
--------------------------------------------^
configure: failed program was:
#line 61763 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
ssize_t pwrite(int, void *, size_t, off64_t);
main() { return !(pwrite(open("conftest_out", O_WRONLY|O_CREAT,
0600), "Ok", 2, 0) == 2); }
Once again, the problem is that the compaq C compiler cannot handle
multiple -Wl,-rpath components like configure is trying to use.
------------------------------------------------------------------------
[2002-07-02 20:55:08] sniper@php.net
Please try this snapshot:
http://snaps.php.net/php4-latest.tar.gz
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/17702
--
Edit this bug report at http://bugs.php.net/?id=17702&edit=1