Re: BUG #1807: cannot build postgresql: libascii_and_mic.so.0.0: No such file or directory - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #1807: cannot build postgresql: libascii_and_mic.so.0.0: No such file or directory
Date
Msg-id 5114.1123218929@sss.pgh.pa.us
Whole thread Raw
In response to BUG #1807: cannot build postgresql: libascii_and_mic.so.0.0: No such file or directory  ("Janet Hempstead" <hempsteadj@rogers.com>)
List pgsql-bugs
"Janet Hempstead" <hempsteadj@rogers.com> writes:
> I am trying to build postgresql 8.0.3 on a Sun Ultra 5 running Solaris 9.
> ...
> export LDFLAGS='-L /usr/lib -L /usr/local/lib -L /usr/local/ssl/lib'
> ...
> gcc -shared -h libascii_and_mic.so.0  ascii_and_mic.o
> -L../../../../../../src/port -L -L -L   -o libascii_and_mic.so.0.0
> gcc: libascii_and_mic.so.0.0: No such file or directory

Hmm ... I think what happened here is that the first -L ate the second
-L as argument, and then the third -L ate the -o, leaving
libascii_and_mic.so.0.0 looking like an input filename rather than an
output filename to gcc.  But this is of course only the symptom --- the
question is how did those argument-less -L switches get into the command
line?  I'm guessing that your LDFLAGS switch got munged into this.

The recommended, supported way of specifying library directories is
not through LDFLAGS, but like this:

    configure ... --with-libs=/usr/lib:/usr/local/lib:/usr/local/ssl/lib

I think that your LDFLAGS approach might have worked if you'd left out
the spaces between the -L's and the directories, but given the way we
whack LDFLAGS around in the makefiles, it definitely won't work with
spaces :-(

            regards, tom lane

pgsql-bugs by date:

Previous
From: "HAUSERMANN Laurent"
Date:
Subject: BUG #1799: Auto Creation of Strong Password fails
Next
From: "Qingqing Zhou"
Date:
Subject: Re: Server broken down in covering GB18030