On 3/19/2019 21:12, Andrew Gierth
wrote:
"Karl" == Karl Denninger <karl@xxxxxxxxxxxxx> writes:
>> That's a configure line that has never worked on FreeBSD:
>>
>> % ./configure --with-openssl --with-perl
>> [...]
>> configure: error: readline header not found
>> If you have libedit already installed, see config.log for details on the
>> failure. It is possible the compiler isn't looking in the proper directory.
>> Use --without-readline to disable libedit support.
>> %
Karl> Uh, it has worked on all my FreeBSD systems for a very long time;
Then you have done something non-standard, because "cc" on FreeBSD does
not look in /usr/local/include or /usr/local/lib without being told to
do so, and the configure checks for readline will fail without that.
Possible explanations include having a "gcc" (without a specific version
suffix) on the $PATH (gcc will be chosen over cc in that case), or
having configured CFLAGS or CPPFLAGS in the environment to ./configure.
You might post your full output of ./configure rather than leaving us to
guess at it.
"cc" on FreeBSD is now (and has been for quite some time) clang:
root@NewFS:/home/karl # cc -v
FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540)
(based on LLVM 6.0.1)
Target: x86_64-unknown-freebsd12.0
Thread model: posix
InstalledDir: /usr/bin
If it will compile Postgres now it definitely would not when it
was first shifted to; gcc, on the other hand (and gmake) does just
fine and yes, they are ports (packages in this case as they're
binary installs on this box) and not part of the base system:
root@NewFS:/home/karl # which gcc
/usr/local/bin/gcc
root@NewFS:/home/karl # gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc8/gcc/x86_64-portbld-freebsd12.0/8.3.0/lto-wrapper
Target: x86_64-portbld-freebsd12.0
Configured with:
/wrkdirs/usr/ports/lang/gcc8/work/gcc-8.3.0/configure
--with-build-config=bootstrap-debug --disable-nls
--enable-gnu-indirect-function --libdir=/usr/local/lib/gcc8
--libexecdir=/usr/local/libexec/gcc8 --program-suffix=8
--with-as=/usr/local/bin/as --with-gmp=/usr/local
--with-gxx-include-dir=/usr/local/lib/gcc8/include/c++/
--with-ld=/usr/local/bin/ld --with-pkgversion='FreeBSD Ports
Collection' --with-system-zlib
--enable-languages=c,c++,objc,fortran --prefix=/usr/local
--localstatedir=/var --mandir=/usr/local/man
--infodir=/usr/local/share/info/gcc8
--build=x86_64-portbld-freebsd12.0
Thread model: posix
gcc version 8.3.0 (FreeBSD Ports Collection)
I'll spin up a test machine on a "virgin" install when I get one
free from other things and see exactly what I have to put on there
in terms of ports.
In any event with the removal of the openssl port it now
configures, compiles, links and runs.
config.log makes clear it is using gcc (as did the blowup)
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by PostgreSQL configure 11.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ ./configure --with-openssl --with-perl
## --------- ##
## Platform. ##
## --------- ##
hostname = NewFS.denninger.net
uname -m = amd64
uname -r = 12.0-STABLE
uname -s = FreeBSD
uname -v = FreeBSD 12.0-STABLE r343809 KSD-SMP
/usr/bin/uname -p = amd64
/bin/uname -X = unknown
/bin/arch = unknown
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown
PATH: /sbin
PATH: /bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /root/bin
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2840: checking build system type
configure:2854: result: x86_64-unknown-freebsd12.0
configure:2874: checking host system type
configure:2887: result: x86_64-unknown-freebsd12.0
configure:2909: checking which template to use
configure:2977: result: freebsd
configure:3102: checking whether NLS is wanted
configure:3134: result: no
configure:3142: checking for default port number
configure:3167: result: 5432
configure:3672: checking for block size
configure:3706: result: 8kB
configure:3718: checking for segment size
configure:3747: result: 1GB
configure:3759: checking for WAL block size
configure:3794: result: 8kB
configure:3891: checking for gcc
configure:3907: found /usr/local/bin/gcc
configure:3918: result: gcc
configure:3949: checking for C compiler version
configure:3958: gcc --version >&5
gcc (FreeBSD Ports Collection) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
configure:3969: $? = 0
configure:3958: gcc -v >&5
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc8/gcc/x86_64-portbld-freebsd12.0/8.3.0/lto-wrapper
Target: x86_64-portbld-freebsd12.0
Configured with:
/wrkdirs/usr/ports/lang/gcc8/work/gcc-8.3.0/configure
--with-build-config=bootstrap-debug --disable-nls
--enable-gnu-indirect-function --libdir=/usr/local/lib/gcc8
--libexecdir=/usr/local/libexec/gcc8 --program-suffix=8
--with-as=/usr/local/bin/as --with-gmp=/usr/local
--with-gxx-include-dir=/usr/local/lib/gcc8/include/c++/
--with-ld=/usr/local/bin/ld --with-pkgversion='FreeBSD Ports
Collection' --with-system-zlib
--enable-languages=c,c++,objc,fortran --prefix=/usr/local
--localstatedir=/var --mandir=/usr/local/man
--infodir=/usr/local/share/info/gcc8
--build=x86_64-portbld-freebsd12.0
Thread model: posix
gcc version 8.3.0 (FreeBSD Ports Collection)
configure:3969: $? = 0
configure:3958: gcc -V >&5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
configure:3969: $? = 1
configure:3958: gcc -qversion >&5
gcc: error: unrecognized command line option '-qversion'; did you
mean '--version'?
gcc: fatal error: no input files
compilation terminated.
..... (the whole file is over 10k lines....)