Re: SOLVED - Relocation error for precompiled shared module extension.

From: Date: Mon, 22 Sep 2003 13:14:41 +0000
Subject: Re: SOLVED - Relocation error for precompiled shared module extension.
References: 1 2  Groups: php.pecl.dev 
Request: Send a blank email to pecl-dev+get-38@lists.php.net to get a copy of this message
On Mon, 2003-09-22 at 04:23, Wez Furlong wrote: > > I'd normally post this to the internals list but I think that this group > > is the new, more appropriate list. Correct me if I'm wrong :) > > Here is good :) > > > php: relocation error: /usr/lib/php4/php_interjinn.so: undefined symbol: > > _ecalloc > > > I found similar information on Google suggesting, though not > > indefinately, that this is due to PHP version incompatibility. Can > > anyone verify that this is indeed the cause? > > It does sound like that is the cause. > Which version of PHP do you have and which version does your user have? > > > For the sake of providing > > more complete information, the shared module works fine on my system and > > was compiled under linux with the following command lines: > > > > cc -fpic -DCOMPILE_DL_INTERJINN=1 \ > > -Iext/interjinn/ -Iinclude -Imain -I. -IZend -ITSRM \ > > -c -o ext/interjinn/interjinn.o ext/interjinn/interjinn.c > > > > cc -shared -L/usr/local/lib -rdynamic -o \ > > ext/interjinn/interjinn.so \ > > ext/interjinn/interjinn.o > > Can you try building your extension using the "phpize" tool? (or is that > sequence of commands generated by phpize?) Hmmm I've never used this tool :) The above commands were gleaned from reading various documentation rooted from the PHP module documentation, but I think said documentation branched to other sites via the comment sections. Anyways the user was using PHP 4.2.2 and I had compiled for 4.3.2. So after finding out that compiling a version specifically using the 4.2.2 tre worked for him, I downloaded and compiled a version for each of the PHP versions running from 4.1.0 to 4.3.3. From this action I discovered there are three points at which a different compilation is necessary: - 4.1.0 to 4.1.2 inclusive are compatible - 4.2.2 to 4.2.3 inclusive are compatible - 4.3.0 to 4.3.3 inclusive are compatible I don't know about 4.2.0 and 4.2.1 since the older releases found by using the search interface on php.net all provided a document not found error. Anyways, I hope this information might be useful to anyone else creating pre-compiled extensions. Cheers, Rob. -- .------------------------------------------------------------. | InterJinn Application Framework - http://www.interjinn.com | :------------------------------------------------------------: | An application and templating framework for PHP. Boasting | | a powerful, scalable system for accessing system services | | such as forms, properties, sessions, and caches. InterJinn | | also provides an extremely flexible architecture for | | creating re-usable components quickly and easily. | `------------------------------------------------------------'

« previous php.pecl.dev (#38) next »