[MacPorts] #71304: xercesc3 @3.3.0: Ports using libxerces-c-3.3.dylib fail: symbol not found in flat namespace '_xercesc_messages_3_2_dat' (was: xalanc: build failure with xercesc3 at 3.3.0)
MacPorts
noreply at macports.org
Thu Nov 14 01:37:49 UTC 2024
#71304: xercesc3 @3.3.0: Ports using libxerces-c-3.3.dylib fail: symbol not found
in flat namespace '_xercesc_messages_3_2_dat'
------------------------+--------------------
Reporter: matty0ung | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.10.4
Resolution: | Keywords:
Port: xercesc3 |
------------------------+--------------------
Changes (by ryandesign):
* version: => 2.10.4
* port: xalanc => xercesc3
Comment:
I am able to reproduce the xalanc build failure but I now think this is a
bug in xercesc3 @3.3.0 because other ports fail with the same message. nco
for example fails to configure; its config.log says:
{{{
configure:5274: checking whether we are cross compiling
configure:5282: ccache /usr/bin/clang -o conftest -pipe -Os
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk -arch
x86_64 -I/opt/local/include -I/opt/local/include/udunits2
-I/opt/local/include -DENABLE_NETCDF4
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk
-L/opt/local/lib -Wl,-headerpad_max_install_names -lxerces-c
-Wl,-rpath,/opt/local/lib/libgcc
-Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk
-arch x86_64 conftest.c >&5
configure:5286: $? = 0
configure:5293: ./conftest
dyld[5155]: symbol not found in flat namespace (_xercesc_messages_3_2_dat)
./configure: line 5295: 5155 Abort trap: 6
./conftest$ac_cv_exeext
configure:5297: $? = 134
configure:5304: error: in
'/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_nco/nco/work/nco-5.2.9':
configure:5306: error: cannot run C compiled programs.
}}}
enigma builds and installs but it fails to run:
{{{
% enigma
dyld[17071]: symbol not found in flat namespace
(_xercesc_messages_3_2_dat)
zsh: abort enigma
}}}
I believe the problem is in the file
src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp which says:
{{{#!c
/*
* Resource Data Reference.
*
* The data is packaged as a dll (or .so or whatever, depending on the
platform) that exports a data symbol.
* The application (this *.cpp) references that symbol here, and will
pass the data address to ICU, which
* will then be able to fetch resources from the data.
*/
#define ENTRY_POINT xercesc_messages_3_2_dat
#define BUNDLE_NAME "xercesc_messages_3_2"
}}}
Surely for version 3.3.0 that should be `3_3` not `3_2`.
--
Ticket URL: <https://trac.macports.org/ticket/71304#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list