#1298 [NoF->Opn]: need to use -taso with Netscape LDAP libs
| From: | long at kestrel dot cc dot ukans dot edu | Date: | Thu, 15 Aug 2002 22:09:25 +0000 |
| Subject: | #1298 [NoF->Opn]: need to use -taso with Netscape LDAP libs | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-16947@lists.php.net to get a copy of this message | ||
ID: 1298
User updated by: long@kestrel.cc.ukans.edu
Reported By: long@kestrel.cc.ukans.edu
-Status: No Feedback
+Status: Open
Bug Type: Compile Failure
Operating System: Compaq Tru64 4.0F PK3
PHP Version: 4.2.1
New Comment:
We are using version 3.0 of the Netscape Directory SDK for C with SSL
support. I believe that at the time we installed it that it only came
in the '-taso' version. If I were upgrading the LDAP SDK then I would
of course try and obtain a non '-taso' version.
Previous Comments:
------------------------------------------------------------------------
[2002-08-08 01:00:12] php-bugs@lists.php.net
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
------------------------------------------------------------------------
[2002-07-07 21:20:02] sniper@php.net
Most of the compile problems with Tru64 have been fixed
in CVS:
http://snaps.php.net/php4-latest.tar.gz
This '-taso' thing is not fixed though.
Exactly what version of Netscape LDAP libs does this happen
with? And wouldn't it be better to get ones which are NOT
compiled with -taso flag??
------------------------------------------------------------------------
[2002-06-17 17:48:38] long@kestrel.cc.ukans.edu
LDFLAGS does not work and I cannot remember the exact reason why.
Perhaps because LDFLAGS do not get used when cc is used to perform the
linking or when ld is used to build shared objects?
At any rate, for the last several PHP versions I've been using:
LD='/usr/bin/ld -taso' CFLAGS='-taso' CXXFLAGS='-taso'
CC='cc'
CXX='cxx' CXXCPP='cxx -E' ./configure ....
to work around this problem.
Here is the description of the -taso option from the cc man page:
-taso
Directs the linker to load the executable file in the lower
31-bit addressable virtual address range. The -T and -D options to the
ld command can also be used, respectively, to ensure that the text and
data segments addresses are loaded into low memory.
The -taso option, however, in addition to setting default
addresses for text and data segments, also causes shared libraries
linked outside the 31-bit address space to be appropriately relocated
by the loader. If you specify -taso and also specify text and data
segment addresses with -T and -D, those addresses override the -taso
default addresses. The -taso option can be helpful when porting
programs that assume address values can be stored in 32-bit variables
(that is, programs that assume that pointers are the same length as int
variables).
And the reason this is required is because the particular version of
the Netscape LDAP SDK that we downloaded and installed was built using
the -taso option. Thus anything linking to it also has to use -taso.
------------------------------------------------------------------------
[2002-06-17 17:41:08] sniper@php.net
Does this work:
LDFLAGS="-taso" ./configure <and your options here>
(with fresh sources!) I would think this option needs
to be on for all of the build?
(What is it anyway? Any URL explaining it?)
--Jani
------------------------------------------------------------------------
[2002-06-17 17:30:04] long@kestrel.cc.ukans.edu
reopened for latest version.
------------------------------------------------------------------------
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/1298
--
Edit this bug report at http://bugs.php.net/?id=1298&edit=1