Subject: Issues with PostgreSQL Source Code Installation

From: Ayush Vatsa <[email-masked]>
Date: Tue, 24 Sep 2024 16:44:38 +0530

Hi PostgreSQL Community,

I am encountering an issue while trying to install PostgreSQL from its
source code and would appreciate any guidance you can provide.
Here are the steps I've taken so far:
sudo yum install libicu-devel
git clone git://git.postgresql.org/git/postgresql.git
./configure --enable-tap-tests --prefix=`pwd`/build
make world-bin

However, during the make world-bin process, I am encountering the following
errors:

/usr/bin/ld: commands/collationcmds.o: in function
`pg_import_system_collations':
collationcmds.c:(.text+0xeed): undefined reference to
`uloc_countAvailable_73'
/usr/bin/ld: collationcmds.c:(.text+0xf0a): undefined reference to
`uloc_getAvailable_73'
/usr/bin/ld: collationcmds.c:(.text+0xfc6): undefined reference to
`uloc_getDisplayName_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_isalpha':
regcomp.c:(.text+0xe41): undefined reference to `u_isalpha_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_isspace':
regcomp.c:(.text+0xef1): undefined reference to `u_isspace_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_isdigit':
regcomp.c:(.text+0x1031): undefined reference to `u_isdigit_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_isalnum':
regcomp.c:(.text+0x10e1): undefined reference to `u_isalnum_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_isgraph':
regcomp.c:(.text+0x1c81): undefined reference to `u_isgraph_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_isupper':
regcomp.c:(.text+0x1d31): undefined reference to `u_isupper_73'
/usr/bin/ld: regex/regcomp.o: in function `pg_wc_islower':

I have ICU version 73.1 installed, which I confirmed with: icu-config
--version
My ~/.zshrc file looks like:

export LDFLAGS="-L/usr/lib64 -L/usr/local/lib"
export CPPFLAGS="-I/usr/include"
export PATH="/usr/lib64/icu:$PATH"
export PKG_CONFIG_PATH="/usr/lib64/pkgconfig/:/usr/local/lib/pkgconfig"
export LD_LIBRARY_PATH="/usr/lib64:/usr/local/lib:$LD_LIBRARY_PATH"

Output for: sudo find / -name libicui18n.so
/usr/lib64/libicui18n.so

I am using:
Linux kernel version: 6.1.106-116.188.amzn2023.x86_64
Architecture: x86_64

Regards
Ayush

---

From: Adrian Klaver <[email-masked]>
Date: Tue, 24 Sep 2024 09:12:47 -0700

> git clone git://git.postgresql.org/git/postgresql.git 

Why are you building against the repo instead  of a fixed version from 
here?:

https://www.postgresql.org/ftp/source/

> <http://git.postgresql.org/git/postgresql.git>

Did you checkout a given tag?

-- 
Adrian Klaver
[email-masked]

---

From: Ayush Vatsa <[email-masked]>
Date: Tue, 24 Sep 2024 22:02:28 +0530

> Why are you building against the repo instead  of a fixed version from
So actually I wanted to modify and playaround with the code,
hence I am using the github repo and building postgres from it.

> Did you checkout a given tag?
I haven't checkout on any branch and currently
on branch master where I am trying to build postgres

Regards
Ayush

---

From: Tom Lane <[email-masked]>
Date: Tue, 24 Sep 2024 13:04:26 -0400

> hence I am using the github repo and building postgres from it.

Seems reasonable.  The tip of master branch is occasionally broken,
but seldom for very long, and none of our buildfarm animals are
reporting failures like this.  It looks to me like there is something
wrong with your libicu installation --- perhaps headers out of sync
with shared library?

			regards, tom lane

---

From: Ayush Vatsa <[email-masked]>
Date: Fri, 27 Sep 2024 00:30:12 +0530

> It looks to me like there is something
Yes correct, fixing libicu installation resolved the issue.