Hi all,
I'm having problems compiling PostgreSQL.
I can run "make" no problem with this command
./configure --prefix=/home/pol/Downloads/sware/db/pg/inst --mandir=/home/pol/Downloads/sware/db/pg/inst/man --docdir=/home/pol/Downloads/sware/db/pg/inst/doc --enable-nls --with-python --with-openssl --with-systemd --with-uuid=e2fs --with-libxml --with-libxslt
but not this one
./configure --prefix=/home/pol/Downloads/sware/db/pg/inst --mandir=/home/pol/Downloads/sware/db/pg/inst/man --docdir=/home/pol/Downloads/sware/db/pg/inst/doc --enable-nls --with-python --with-icu --with-openssl --with-systemd --with-uuid=e2fs --with-libxml --with-libxslt
(for those of you with bad eyesight, the difference is in the extra "--with-icu" in the second failing command! :-) )
Now, I've installed the icu libraries using the classic ./configure, make and sudo make install.
The error I'm getting is
make[4]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/port'
make -C ../../src/common all
make[4]: Entering directory '/home/pol/Downloads/sware/db/pg/src/src/common'
make -C ../backend submake-errcodes
make[5]: Entering directory '/home/pol/Downloads/sware/db/pg/src/src/backend'
make[5]: Nothing to be done for 'submake-errcodes'.
make[5]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/backend'
make[4]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/common'
make[3]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/timezone'
/usr/bin/gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -O2 -L../../src/port -L../../src/common -Wl,--as-needed -Wl,-rpath,'/home/pol/Downloads/sware/db/pg/inst/lib',--enable-new-dtags -Wl,-E access/brin/brin.o access/brin/brin_pageops.o
make -C ../../src/common all
make[4]: Entering directory '/home/pol/Downloads/sware/db/pg/src/src/common'
make -C ../backend submake-errcodes
make[5]: Entering directory '/home/pol/Downloads/sware/db/pg/src/src/backend'
make[5]: Nothing to be done for 'submake-errcodes'.
make[5]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/backend'
make[4]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/common'
make[3]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/timezone'
/usr/bin/gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -O2 -L../../src/port -L../../src/common -Wl,--as-needed -Wl,-rpath,'/home/pol/Downloads/sware/db/pg/inst/lib',--enable-new-dtags -Wl,-E access/brin/brin.o access/brin/brin_pageops.o
... a shedload more .o files snipped from error and then at the end:
../../src/timezone/pgtz.o ../../src/port/libpgport_srv.a ../../src/common/libpgcommon_srv.a -lpthread -lxslt -lxml2 -lssl -lcrypto -lrt -lcrypt -ldl -lm -licui18n -licuuc -licudata -lsystemd -o postgres
commands/collationcmds.o: In function `pg_import_system_collations':
collationcmds.c:(.text+0xe16): undefined reference to `uloc_countAvailable_61'
collationcmds.c:(.text+0xe36): undefined reference to `uloc_getAvailable_61'
collationcmds.c:(.text+0xe5b): undefined reference to `uloc_toLanguageTag_61'
collationcmds.c:(.text+0xf0c): undefined reference to `uloc_countAvailable_61'
collationcmds.c:(.text+0xf85): undefined reference to `uloc_getDisplayName_61'
collationcmds.c:(.text+0x112e): undefined reference to `u_errorName_61'
regex/regcomp.o: In function `pg_wc_isalpha':
regcomp.c:(.text+0x9a1): undefined reference to `u_isalpha_61' <--- seems to be an icu issue here?
regex/regcomp.o: In function `pg_wc_isspace':
regcomp.c:(.text+0xa81): undefined reference to `u_isspace_61'
commands/collationcmds.o: In function `pg_import_system_collations':
collationcmds.c:(.text+0xe16): undefined reference to `uloc_countAvailable_61'
collationcmds.c:(.text+0xe36): undefined reference to `uloc_getAvailable_61'
collationcmds.c:(.text+0xe5b): undefined reference to `uloc_toLanguageTag_61'
collationcmds.c:(.text+0xf0c): undefined reference to `uloc_countAvailable_61'
collationcmds.c:(.text+0xf85): undefined reference to `uloc_getDisplayName_61'
collationcmds.c:(.text+0x112e): undefined reference to `u_errorName_61'
regex/regcomp.o: In function `pg_wc_isalpha':
regcomp.c:(.text+0x9a1): undefined reference to `u_isalpha_61' <--- seems to be an icu issue here?
regex/regcomp.o: In function `pg_wc_isspace':
regcomp.c:(.text+0xa81): undefined reference to `u_isspace_61'
... snip a lot more undefined reference errors with u_xxxx_61 in them
and then at the end
varlena.c:(.text+0x2245): undefined reference to `ucol_strcoll_61'
varlena.c:(.text+0x2292): undefined reference to `ucol_strcollUTF8_61'
varlena.c:(.text+0x22c3): undefined reference to `u_errorName_61'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:61: postgres] Error 1
make[2]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/backend'
make[1]: *** [Makefile:38: all-backend-recurse] Error 2
make[1]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src'
make: *** [GNUmakefile:11: all-src-recurse] Error 2
[pol@polhost src]$
varlena.c:(.text+0x2292): undefined reference to `ucol_strcollUTF8_61'
varlena.c:(.text+0x22c3): undefined reference to `u_errorName_61'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:61: postgres] Error 1
make[2]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src/backend'
make[1]: *** [Makefile:38: all-backend-recurse] Error 2
make[1]: Leaving directory '/home/pol/Downloads/sware/db/pg/src/src'
make: *** [GNUmakefile:11: all-src-recurse] Error 2
[pol@polhost src]$
I've compiled PostgreSQL many times and I've always been impressed with the way it "just works"!
I would be grateful if anybody could show me how I could resolve my issue.
TIA, Pól...