Thread

  1. Re: NetBSD 1.4.2/i386 needs to link psql with -ltermcap

    Giles Lean <giles@nemeton.com.au> — 2001-03-23T23:05:54Z

    Peter Eisentraut wrote
    
    > This should be detected by configure.  E.g., on my system I get
    > 
    > | checking for readline... yes (-lreadline -ltermcap)
    > 
    > (-lreadline and -ledit are equivalent for computational purposes).
    
    On NetBSD-1.4.2 is that the link test works with -ledit, and indeed
    psql built without -ltermcap will even run non-interactively (I loaded
    a database with it) but it fails when running interactively.
    
    config.log:
    
    configure:3143: checking for readline
    configure:3165: gcc -o conftest -O2 -pipe     conftest.c -lreadline  1>&5
    ld: -lreadline: no match
    collect2: ld returned 1 exit status
    configure: failed program was:
    #line 3154 "configure"
    #include "confdefs.h"
    /* Override any gcc2 internal prototype to avoid an error.  */
    /* We use char because int might match the return type of a gcc2
        builtin and then its argument prototype would still apply.  */
    char readline();
    
    int main() {
    readline()
    ; return 0; }
    configure:3165: gcc -o conftest -O2 -pipe     conftest.c -ledit  1>&5
    configure:3192: checking for library containing using_history
    configure:3210: gcc -o conftest -O2 -pipe     conftest.c -ledit  1>&5
    ...
    
    It would be nicer if the link failed. :-(
    
    Actually running the program above:
    
    /usr/libexec/ld.so: Undefined symbol "_tgetent" called from
    conf:/usr/lib/libed\ it.so.2.2 at 0x4002d2ac
    
    ldd doesn't show problems:
    
    conf:
            -ledit.2 => /usr/lib/libedit.so.2.2 (0x4001b000)
            -lc.12 => /usr/lib/libc.so.12.40 (0x4002f000)
    
    I'm now out of my depth with both configure and linker behaviour. :-(
    
    Regards,
    
    Giles
    
    
    
    
  2. Re: NetBSD 1.4.2/i386 needs to link psql with -ltermcap

    Peter Eisentraut <peter_e@gmx.net> — 2001-03-24T10:41:28Z

    Giles Lean writes:
    
    > char readline();
    >
    > int main() {
    > readline()
    > ; return 0; }
    > configure:3165: gcc -o conftest -O2 -pipe     conftest.c -ledit  1>&5
    > configure:3192: checking for library containing using_history
    > configure:3210: gcc -o conftest -O2 -pipe     conftest.c -ledit  1>&5
    > ...
    >
    > It would be nicer if the link failed. :-(
    >
    > Actually running the program above:
    >
    > /usr/libexec/ld.so: Undefined symbol "_tgetent" called from
    > conf:/usr/lib/libed\ it.so.2.2 at 0x4002d2ac
    
    This looks to be an oddly behaving linker.  Maybe this is a better
    question for a netbsd user forum.
    
    > ldd doesn't show problems:
    >
    > conf:
    >         -ledit.2 => /usr/lib/libedit.so.2.2 (0x4001b000)
    >         -lc.12 => /usr/lib/libc.so.12.40 (0x4002f000)
    
    How about ldd libedit?
    
    -- 
    Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/