Re: [PHP4BETA] iodbc crashing while connecting to MSSQL
[email protected] (Dave Goodrich)
| Newsgroups | php.version4 |
|---|---|
| Message-ID | <B54B4106.1348%[email protected]> |
This is not the top level makefile, the PHP makefile, correct? I went to thinking (dangerous I know) and thought that this must be a issue deep in PHP, like Zend deep. So I decided to try adding the -lc_r to the LIBS line in the Zend makefile. It worked, here is my script. # cd /usr/src/php-4.0.0 # ./configure\ --with-iodbc\ --with-openlink=/usr/local/openlink\ --with-apxs=/usr/local/apache/bin/apxs\ --with-ttf=/usr/local/lib\ --with-gd # cd Zend # vi Makefile < changed LIBS= to LIBS=-lc_r > # cd ../ # make # make install # cd ../apache-1.2.13 # cd src # vi Makefile < changed line 26 from EXTRALIBS= to EXTRALIBS=-lc_r # cd ../ # make # cp src/httpd /usr/local/apache/bin/httpd restarted apache, and now I am executing stored procedures on MSSQL on an NT box. Works great. I did not change anything in my top level makefile. This may seem simple to C programmers but it wasn't to me until I thought hard about it. But it works, perfectly so far. It's a thing of beauty........ and stored procedures are wicked fast, I'll never pass SQL again. DAve. Many thanks to Andrew at Openlink. on 5/19/00 12:12 PM, Andrew Hill at [email protected] wrote: > Dave, > > I have a section EXTRA_LIBS > but also have a section titled LIBS > > in my php40b3 makefile. > > What version of php? > > Best regards, > Andrew > > > -----Original Message----- > From: Dave Goodrich [mailto:[email protected]] > Sent: Friday, May 19, 2000 2:45 PM > To: Php4beta@Lists. Php. Net > Subject: Re: [PHP4BETA] iodbc crashing while connecting to MSSQL > > > Maybe I'm just not seeing the light here. > > The only place I saw that this could be added was under the EXTRA_LIBS area. > > LTLIBRARY_LIBADD = $(LTLIBRARY_DEPENDENCIES) $(EXTRA_LIBS) > > I changed to this; > > LTLIBRARY_LIBADD = -lc_r $(LTLIBRARY_DEPENDENCIES) $(EXTRA_LIBS) > > Which causes Apache to dump core when libphp4.so is loaded. What part of > "add -lc_r to the libs" do I not understand? I should go ahead and learn C > shouldn't I? > > <sheepish> > Help an old scripter out, can someone hold my hand here? > </sheepish> > > A straight build on Slackware works, no erros and php connects to MSSQL. How > do I get this compiled with FBSD? I don't believe there is a problem with > pthreads on Apache 1.3.12 with FBSD 3.2 (nothing on the maillist archives > I've seen), but until I know I have php compiled correctly with "add -lc_r > to the libs" I can't be certain. > > DAve. > > > on 5/19/00 7:56 AM, Andrew Hill at [email protected] wrote: > >> Dave, you should have a section of the PHP makefile that reads >> >> LIBS = >> >> just add -lc_r to whatever else is there, instead of adding it to >> >> PROGRAM_LDFLAGS >> >> >> >> I believe you only need to do this in the PHP Makefile. >> >> Best regards, >> Andrew >> >> -----Original Message----- >> From: Dave Goodrich [mailto:[email protected]] >> Sent: Friday, May 19, 2000 10:45 AM >> To: [email protected] >> Subject: Re: [PHP4BETA] iodbc crashing while connecting to MSSQL >> >> >> I'm running Apache 1.3.12 on FBSD 3.2. While I've compiled many a piece > of >> software, patched, diffed, and modified. Generally it's the standard >> Makefiles I've messed with. Humor this old scripter and throw me a clue > what >> "add -lc_r to the libs" means. >> >> For PHP I added the -lc_r at this point. I haven't a clue where to modify >> the Apache Makefile. >> >> PROGRAM_LDFLAGS = -lr_c -export-dynamic >> >> make returned this; >> >> libtool: link: only absolute run-paths are allowed >> *** Error code 1 >> >> Thanks for the handholding, I'll make it up to you with a license PO ;^) >> >> DAve. >> -- >> Dave Goodrich >> Director of Interface Development >> Reality Based Learning Company >> 9521 NE Willows Road, Suite 100 >> Redmond, WA 98052 >> Toll Free 1-877-869-6603 ext. 237 >> Fax (425) 558-5655 >> [email protected] >> Web Site www.rblc.com >> >> >> >> on 5/19/00 6:19 AM, Andrew Hill at [email protected] wrote: >> >>> Dave, >>> >>> Check if you got a compile error regarding undefined symbol >>> pthread_mutex_lock >>> >>> If you did, adding -lc_r into the libs in the makefile should allow it to >>> compile without errors. If you still receive the error when running, > your >>> apache build probably doesn't have -pthread support. What version of >> Apache >>> are you running, as I know that -pthread support came late into the >> FreeBSD >>> builds. >>> >>> We do not have a non-multi-threaded odbc client, so you need to resolve >> this >>> at the apache end. >>> >>> Hope this helps! >>> >>> Best regards, >>> Andrew >>> ---------------------------------------------------- >>> Andrew Hill >>> Technical Support Consultant >>> OpenLink Software >>> http://www.openlinksw.com >>> Universal Database Connectivity Technology Providers >>> >>> >>> -----Original Message----- >>> From: Dave Goodrich [mailto:[email protected]] >>> Sent: Thursday, May 18, 2000 8:04 PM >>> To: [email protected]; [email protected] >>> Subject: Re: [PHP4BETA] iodbc crashing while connecting to MSSQL >>> >>> >>> Well, I have everything running now. The ODBC admin (web tool) can test >>> successfully to the MSSQL DB. I recompiled PHP with openlink support and >> it >>> compiled cleanly and restarted. >>> >>> Now when I try to make a connection I get the following in my apache >>> error_log. >>> >>> /usr/libexec/ld-elf.so.1: /usr/local/openlink/lib/oplodbc.so.1.0: >> Undefined >>> symbol "pthread_mutex_lock" >>> >>> I've never seen problems with posix threads on any software I've compiled >> on >>> FreeBSD. Is this just a lib problem? am I not linking correctly? >>> >>> Any help would be appreciated. >>> >>> DAve >>> >>> >>> >>> -- >>> PHP 4.0 Beta Mailing List <http://www.php.net/version4/> >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> To contact the list administrators, e-mail: [email protected] >>> >>> >> >> > > > -- > PHP 4.0 Beta Mailing List <http://www.php.net/version4/> > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > To contact the list administrators, e-mail: [email protected] > >