On 11 Mar 2024, at 15:00, Pavel Stehule <pavel.stehule@gmail.com> wrote:
The advantage of OidFunctionCall is fact, it is working on MacOS. My extension plpgsql_check has a lot of dependencies on plpgsql.
The linking on MacOS required special section in Makefile
ifeq($(PORTNAME), darwin)
overrideCFLAGS+= -undefined dynamic_lookup
endif
Thanks! That worked (I am on MacOS indeed).
And there was another problem with loading dependencies.
Right - the problem seems to be:
ERROR: could not load library "/opt/homebrew/opt/postgresql@16/lib/postgresql/btree_gist_extra.dylib": dlopen(/opt/homebrew/opt/postgresql@16/lib/postgresql/btree_gist_extra.dylib, 0x000A): symbol not found in flat namespace '_gbt_text_consistent'
That only happens when btree_gist is _already_ loaded earlier.
When btree_gist is not loaded yet and I perform:
CREATE EXTENSION btree_gist_extra CASCADE;
all works fine.
So now, I use only indirect methods.
I would like to avoid it but maybe it is going to be necessary.