BUG #17160: PostgreSQL13.4:Build failure with GNU Compiler.

Started by PG Bug reporting formover 4 years ago2 messagesbugs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following bug has been logged on the website:

Bug reference: 17160
Logged by: arjun shetty
Email address: arjunshetty955@gmail.com
PostgreSQL version: 13.4
Operating system: Ubuntu 20.04.1 LTS
Description:

Observed build errors on PostgreSQLv13.4/PostgreSQLv14beta2 with GNU
Compiler.

GCC Build Command:
CC=gcc CXX=g++ ../configure --prefix=<pathtoInstall> CFLAGS='-O3
-march=native -flto' CXXFLAGS='-O3 -march=native -flto'
build errror:
/tmp/zic.soWwyC.ltrans0.ltrans.o:<artificial>:(.text.startup+0xf7b): more
undefined references to `pg_fprintf' follow
/tmp/zic.soWwyC.ltrans0.ltrans.o: In function `main':
<artificial>:(.text.startup+0xfe9): undefined reference to `pg_strerror'
<artificial>:(.text.startup+0x1009): undefined reference to `pg_fprintf'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:55: zic] Error 1

without flto build was success
-flto=thin supported for clang(llvm) .
GCC supports LTO(can use normal flto or GCC has an equivalent to Thin LTO:
WHOle Program optimizeR (WHOPR) i.e like -flto=fwhopr )

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: PG Bug reporting form (#1)
Re: BUG #17160: PostgreSQL13.4:Build failure with GNU Compiler.

PG Bug reporting form <noreply@postgresql.org> writes:

GCC Build Command:
CC=gcc CXX=g++ ../configure --prefix=<pathtoInstall> CFLAGS='-O3
-march=native -flto' CXXFLAGS='-O3 -march=native -flto'
build errror:
/tmp/zic.soWwyC.ltrans0.ltrans.o:<artificial>:(.text.startup+0xf7b): more
undefined references to `pg_fprintf' follow
/tmp/zic.soWwyC.ltrans0.ltrans.o: In function `main':
<artificial>:(.text.startup+0xfe9): undefined reference to `pg_strerror'
<artificial>:(.text.startup+0x1009): undefined reference to `pg_fprintf'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:55: zic] Error 1

without flto build was success

Well, there's your answer. We don't support -flto, and I've not
heard any developers express great interest in making it work.
If somebody were to send in a patch, we might accept it; but
we're not going to treat this as a bug.

regards, tom lane