Re: [PHP-DEV] [PATCH] OCI8 link failure (Tru64/AIX) (#22324)

[email protected] (Jani Taskinen) Sun, 23 Mar 2003 06:49:09 +0200 (EET)
Newsgroups php.dev
Message-ID <[email protected]>
--1312715410-1223505398-1048382400=:4446
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-ID: <[email protected]>


    Attached is patch for ext/oci8/config.m4, please try it out.

    --Jani


On Tue, 11 Mar 2003, Michael Mauch wrote:

>Jani Taskinen <[email protected]> wrote:
>> 
>>    I still don't think we should be linking with libocijdbc8 in any case.
>>    Can you ask some Oracle support why their libs differ with same version 
>>    but in different OSes??
>
>I can try to do so [1], although I don't see what that will buy us.
>
>>From "Oracle9i Administrator's Reference"
><http://download-east.oracle.com/docs/html/A97297_01/ch4_comp.htm#i26133>,
>chapter 4, "Using Oracle Precompilers and the Oracle Call Interface":
>
>| Custom Make Files
>| 
>| Oracle Corporation recommends that you use the provided demo_product.mk
>| make files to create user programs as described in the specific product
>| sections of this chapter.
>| [...]
>| If you choose to use a make utility such as nmake or GNU make, be aware
>| of how macro and suffix processing differs from the make utility
>| provided with the platform. Oracle make files are tested and are
>| supported with the make utility for your platform.
>
>The "demo_product.mk" is in reality called demo_rdbms.mk - and of course
>it's virtually undocumented.
>
>| Oracle library names and the contents of Oracle libraries are subject to
>| change between releases. Always use the demo_product.mk make file that
>| ships with the current release as a guide to determine the required
>| libraries.
>
>Then they go on to explain their "symfind" utility, which is a shell
>script around "find", "grep" and "nm" - with platform-specific output [2].
>
>| Correcting Undefined Symbols (Solaris Only)
>|
>| Oracle provides the symfind utility to assist you in locating a library
>| or object file where a symbol is defined. When linking a program,
>| undefined symbols are a common error that produce an error message
>| similar to the following:
> 
>IMHO this is totally unacceptable. If they can't provide a well-defined
>set of interface libraries, they should at least offer some kind of
>"oci-config" or a few text files with -lsomelib -lanotherlib lines.
>
>But no matter how hard we wish they had some such thing, they don't have
>it at the moment - and even if they would suddenly start to clean up
>that whole mess, it would probably take a long time until their patches
>would be installed everywhere.
>
>I still think that the best solution would be to check if linking with
>-lcntsh alone is enough to get OCILobIsTemporary, and if not, check if
>it works with -locijdbc8.
>
>Regards...
>		Michael
>
>[1]: My question in the "Oracle Technology Network" forum has not been
>answered for two weeks now, ditto in comp.databases.oracle.misc.
>
>[2]: Symfind (or nm) finds the OCILobIsTemporary definition (T) not only
>in libocijdbc8.so, but also in libclntsh.so and a few other libs:
>
>OCILobIsTemporary                | 0000000000000000 | U | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libsql8.a
>OCILobIsTemporary                | 0004396969863776 | T | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libnjni8.so
>OCILobIsTemporary                | 0000000000005408 | T | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libclient8.a
>OCILobIsTemporary                | 0000000000005408 | T | 0000000000000008
>OCILobIsTemporary                | 0000000000000000 | U | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libclntst8.a
>OCILobIsTemporary                | 0004396969227952 | T | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libocijdbc8.so
>OCILobIsTemporary                | 0004396962545744 | T | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libocijdbc8_g.so
>OCILobIsTemporary                | 0000000000000000 | U | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libsqlplus.a
>OCILobIsTemporary                | 0000000000000000 | U | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libordim8.a
>OCILobIsTemporary                | 0004396966909952 | T | 0000000000000008
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ./lib/libclntsh.so
>
>This is on the Compaq/HP test drive with Tru64 5.1 and Oracle 8.1.7.
>
>

-- 
<- For Sale! ->

--1312715410-1223505398-1048382400=:4446
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME=patch
Content-Transfer-Encoding: BASE64
Content-ID: <[email protected]>
Content-Description: 
Content-Disposition: ATTACHMENT; FILENAME=patch

SW5kZXg6IGNvbmZpZy5tNA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNT
IGZpbGU6IC9yZXBvc2l0b3J5L3BocDQvZXh0L29jaTgvY29uZmlnLm00LHYN
CnJldHJpZXZpbmcgcmV2aXNpb24gMS4zNy4yLjMNCmRpZmYgLXUgLXIxLjM3
LjIuMyBjb25maWcubTQNCi0tLSBjb25maWcubTQJMjUgRmViIDIwMDMgMDQ6
Mzc6MDggLTAwMDAJMS4zNy4yLjMNCisrKyBjb25maWcubTQJMjMgTWFyIDIw
MDMgMDE6MTc6NDEgLTAwMDANCkBAIC04OCwxNCArODgsNyBAQA0KIA0KICAg
ICA4LjEpDQogICAgICAgUEhQX0FERF9MSUJSQVJZKGNsbnRzaCwgMSwgT0NJ
OF9TSEFSRURfTElCQUREKQ0KLQ0KLWRubCBUaGlzIGJyZWFrcyBidWlsZCBv
biBzb21lIHN5c3RlbXMgKEFJWCBhdCBsZWFzdCkuDQotZG5sICAgaWYgdGVz
dCAtZiAkT0NJOF9ESVIvbGliL2xpYm9jaWpkYmM4LnNvIDsgdGhlbg0KLWRu
bCAgICAgUEhQX0FERF9MSUJSQVJZKG9jaWpkYmM4LCAxLCBPQ0k4X1NIQVJF
RF9MSUJBREQpDQotZG5sICAgZmkNCi0NCiAgICAgICBQSFBfQUREX0xJQlBB
VEgoJE9DSThfRElSL2xpYiwgT0NJOF9TSEFSRURfTElCQUREKQ0KLSAgICAg
IEFDX0RFRklORShIQVZFX09DSThfVEVNUF9MT0IsMSxbIF0pDQogICAgICAg
QUNfREVGSU5FKEhBVkVfT0NJOF9TSEFSRURfTU9ERSwxLFsgXSkNCiANCiAg
ICAgICBkbmwgDQpAQCAtMTA2LDE0ICs5OSw3IEBADQogDQogICAgIDkuMCkN
CiAgICAgICBQSFBfQUREX0xJQlJBUlkoY2xudHNoLCAxLCBPQ0k4X1NIQVJF
RF9MSUJBREQpDQotDQotZG5sIFRoaXMgYnJlYWtzIGJ1aWxkIG9uIHNvbWUg
c3lzdGVtcyAoQUlYIGF0IGxlYXN0KQ0KLWRubCBpZiB0ZXN0IC1mICRPQ0k4
X0RJUi9saWIvbGlib2NpamRiYzguc28gOyB0aGVuDQotZG5sICAgUEhQX0FE
RF9MSUJSQVJZKG9jaWpkYmM4LCAxLCBPQ0k4X1NIQVJFRF9MSUJBREQpDQot
ZG5sIGZpDQotDQogICAgICAgUEhQX0FERF9MSUJQQVRIKCRPQ0k4X0RJUi9s
aWIsIE9DSThfU0hBUkVEX0xJQkFERCkNCi0gICAgICBBQ19ERUZJTkUoSEFW
RV9PQ0k4X1RFTVBfTE9CLDEsWyBdKQ0KICAgICAgIEFDX0RFRklORShIQVZF
X09DSThfQVRUUl9TVEFURU1FTlQsMSxbIF0pDQogICAgICAgQUNfREVGSU5F
KEhBVkVfT0NJOF9TSEFSRURfTU9ERSwxLFsgXSkNCiAgICAgICBBQ19ERUZJ
TkUoSEFWRV9PQ0k5LDEsWyBdKQ0KQEAgLTEyMyw2ICsxMDksMjUgQEANCiAg
ICAgICBBQ19NU0dfRVJST1IoVW5zdXBwb3J0ZWQgT3JhY2xlIHZlcnNpb24h
KQ0KICAgICAgIDs7DQogICBlc2FjDQorDQorICBkbmwNCisgIGRubCBDaGVj
ayBpZiB3ZSBuZWVkIHRvIGFkZCAtbG9jaWpkYmM4IA0KKyAgZG5sDQorICBQ
SFBfQ0hFQ0tfTElCUkFSWShjbG50c2gsIE9DSUxvYklzVGVtcG9yYXJ5LA0K
KyAgWw0KKyAgICBBQ19ERUZJTkUoSEFWRV9PQ0k4X1RFTVBfTE9CLDEsWyBd
KQ0KKyAgXSwgWw0KKyAgICB1bnNldCBhY19jdl9mdW5jX29jaWxvYmlzdGVt
cG9yYXJ5DQorICAgIFBIUF9DSEVDS19MSUJSQVJZKG9jaWpkYmM4LCBPQ0lM
b2JJc1RlbXBvcmFyeSwNCisgICAgWw0KKyAgICAgIFBIUF9BRERfTElCUkFS
WShvY2lqZGJjOCwgMSwgT0NJOF9TSEFSRURfTElCQUREKQ0KKyAgICAgIEFD
X0RFRklORShIQVZFX09DSThfVEVNUF9MT0IsMSxbIF0pDQorICAgIF0sIFtd
LCBbDQorICAgICAgJE9DSThfU0hBUkVEX0xJQkFERA0KKyAgICBdKQ0KKyAg
XSwgWw0KKyAgICAkT0NJOF9TSEFSRURfTElCQUREDQorICBdKQ0KIA0KICAg
UEhQX05FV19FWFRFTlNJT04ob2NpOCwgb2NpOC5jLCAkZXh0X3NoYXJlZCkN
CiAgIEFDX0RFRklORShIQVZFX09DSTgsMSxbIF0pDQo=
--1312715410-1223505398-1048382400=:4446--