On 3/15/24 13:10, Khem Raj wrote:
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know
the content is safe.
On Thu, Mar 14, 2024 at 10:01 PM Changqing Li
<[email protected]> wrote:
On 3/15/24 01:12, Khem Raj wrote:
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know
the content is safe.
On Thu, Mar 14, 2024 at 12:22 AM Changqing Li
<[email protected]> wrote:
From: Changqing Li<[email protected]>
initdb on target will fail with below error:
2024-03-13 08:40:23.253 UTC [4410] FATAL: could not load library
"/usr/lib64/postgresql/dict_snowball.so":
/usr/lib64/postgresql/dict_snowball.so: undefined symbol: CurrentMemoryContext
Refer [1][2], for cross compile, --export-dynamic is assumed as not
supported, and cause above error. For oe, both gcc and clang support
--export-dynamic, fixed by set LDFLAGS_EX_BE directly
[1]https://www.postgresql.org/message-id/79e63515-0f5e-30f4-136d-96e23b1a817d%40posteo.de
[2]https://github.com/postgres/postgres/commit/9db49fc5bfdc0126be03f4b8986013e59d93b91d#diff-49473dca262eeab3b4a43002adb08b4db31020d190caaad1594b47f1d5daa810
Signed-off-by: Changqing Li<[email protected]>
---
meta-oe/recipes-dbs/postgresql/postgresql.inc | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta-oe/recipes-dbs/postgresql/postgresql.inc
b/meta-oe/recipes-dbs/postgresql/postgresql.inc
index 868a2e443..e29a5bef7 100644
--- a/meta-oe/recipes-dbs/postgresql/postgresql.inc
+++ b/meta-oe/recipes-dbs/postgresql/postgresql.inc
@@ -35,6 +35,7 @@ LEAD_SONAME = "libpq.so"
# LDFLAGS for shared libraries
export LDFLAGS_SL = "${LDFLAGS}"
+export LDFLAGS_EX_BE = "-Wl,--export-dynamic"
this will add all the symbols into dynamic symbol table which may not
be best scenario, can we just export the ones needed ?
perhaps look into using --dynamic-list.
Hi, Khem
I tried to use --dynamic-list as you recommended and test command "postgresql_setup
initdb",
after I added all the symbols in dict_snowball.so, it will report undefined
symbols for another lib. I know I can try to
add all the symbols for all the libs. but there are nearly 80+ libs generated
by postgresql. There will be many symbols.
And I also worried that, we may missing some symbols since I may cannot cover
all the runtime cases.
From [2], we can know that postgresql use "-Wl,--export-dynamic" before.
So maybe it is better to still use "-Wl,--export-dynamic" like before? what is
your opinion?
Yes this maybe ok. I would like you to open a discussion upstream as well.
Do you mean open an discussion about what symbols should in the symbol
files? About the the original issue
"undefined symbol: CurrentMemoryContext", Upstream said that
"Cross-compiling isn't really a supported thing".
//Changqing
Thanks
Changqing
inherit autotools pkgconfig perlnative python3native python3targetconfig
useradd update-rc.d systemd gettext cpan-base multilib_header
--
2.25.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#109331):
https://lists.openembedded.org/g/openembedded-devel/message/109331
Mute This Topic: https://lists.openembedded.org/mt/104922226/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-