Skip to Content.
Sympa Menu

freetds - RE: apache can't start after successful apache/php/ free- tds build

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Lowden, James K" <LowdenJK AT bernstein.com>
  • To: "'TDS Development Group'" <freetds AT franklin.metalab.unc.edu>
  • Subject: RE: apache can't start after successful apache/php/ free- tds build
  • Date: Wed, 3 Jul 2002 12:38:22 -0400


> From: jay [mailto:jsoucy AT mos.org]
> Sent: July 3, 2002 12:16 PM
> To: TDS Development Group
> > >
> > > I just built apache 1.3.26, mod_ssl 2.8.10, php 4.2.1, and
> > > freetds 0.53 on
> > > Solaris 8. Everything compiles without error, but when I
> > > go to start apache, I get:
> > >
> > > Cannot load /usr/local/apache/libexec/libphp4.so into
> server: ld.so.1:
> > > /usr/local/apache/bin/httpd: fatal: relocation error: file
> > > /usr/local/apache/libexec/libphp4.so: symbol
> DBSETLCHARSET: referenced
> > > symbol not found
> >
> > Did you use any --prefix with ./configure when building
> FreeTDS? Where are
> > the FreeTDS libraries installed? And are you sure ldconfig
> is happy?
> >
>
> I didn't add anything to ./configure, so it just installed in
> /usr/local/freetds
> I'm not sure about ldconfig...

OK, then, please take another look at
http://www.freetds.org/userguide/x200.htm#AEN210.

The issue is that the runtime linker has to be able to find the FreeTDS
libraries, and the default installation location (/usr/local/freetds/lib) is
not a place that it will look for them by default. You can do one of two
things:

1. Put the libraries where the runtime linker is already looking, or
2. Tell the runtime linker where they are.

(This is a bugaboo of mine. We're changing the default installation
location in the next release, so not so many people get snagged. But
Solaris is a special case.)

The UG lists three ways to accomplish #2; I'm going to recommend the second
of those three.

I would try "man ldconfig". Find out what the Solaris equivalent of
"/etc/ld.so.conf" is, and modify it per the UG (more or less):

<quote>
Add it to ld.so.conf and run ldconfig.

$ su -
Password:
# echo /usr/local/freetds >> /etc/ld.so.conf
# ldconfig
</quote>

I think that will work with an unmodified PHP. Famous last words.

--jkl



  • RE: apache can't start after successful apache/php/ free- tds build, Lowden, James K, 07/03/2002

Archive powered by MHonArc 2.6.24.

Top of Page