mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-11-04 04:57:07 -08:00
Ref. https://sourceforge.net/p/codeblocks/code/13855/ Upstream patch to fix 'undefined reference' linker errors by adding missing TinyXML libraries to the linker flags. This resolves errors such as: AutoVersioning.cpp:(.text+0x7755): undefined reference to `TiXmlNode::FirstChildElement(char const*) const' See the included patch for additional details and comments. Package-Manager: portage-3.0.82.2 Signed-off-by: Matthew White <mehw.is.me@proton.me> Part-of: https://github.com/gentoo/gentoo/pull/46831 Closes: https://github.com/gentoo/gentoo/pull/46831 Signed-off-by: Sam James <sam@gentoo.org>
238 lines
9.4 KiB
Diff
238 lines
9.4 KiB
Diff
autotools: fix link error when system tinyxml is used. (Thanks hesti)
|
|
|
|
See discussion in C::B forum:
|
|
https://forums.codeblocks.org/index.php/topic,26015.msg177209.html
|
|
|
|
Authored by: christoj 2026-05-26
|
|
|
|
https://sourceforge.net/p/codeblocks/code/13855/
|
|
|
|
$ svn diff -r r13854:r13855 > r13855.patch
|
|
|
|
Patch amended to apply on Gentoo (adds 'a/' and 'b/' prefixes).
|
|
|
|
This should fix dev-util/codeblocks-25.03 'undefined reference'
|
|
compile errors such as the following:
|
|
|
|
libtool: link: x86_64-pc-linux-gnu-g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/15/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/15/crtbeginS.o .libs/AutoVersioning.o .libs/avChangesDlg.o .libs/avHeader.o .libs/avSvnRevision.o .libs/avVersionEditorDlg.o -Wl,-rpath -Wl,/var/tmp/portage/dev-util/codeblocks-25.03-r2/work/codeblocks_25.03/src/sdk/.libs -Wl,--as-needed ../../../sdk/.libs/libcodeblocks.so -L/usr/lib64 -lwx_gtk3u_aui-3.2 -lwx_gtk3u_propgrid-3.2 -lwx_gtk3u_richtext-3.2 -lwx_gtk3u_xrc-3.2 -lwx_gtk3u_html-3.2 -lwx_gtk3u_qa-3.2 -lwx_gtk3u_core-3.2 -lwx_baseu_xml-3.2 -lwx_baseu_net-3.2 -lwx_baseu-3.2 -lpthread -ldl -L/usr/lib/gcc/x86_64-pc-linux-gnu/15 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/15/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/15/../../.. -L/lib -L/usr/lib -lstdc++ -lm -lgcc_s -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/15/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/15/../../../../lib64/crtn.o -O2 -march=x86-64 -mtune=generic -Wl,--no-undefined -Wl,-O1 -Wl,-z -Wl,pack-relative-relocs -pthread -Wl,-soname -Wl,libAutoVersioning.so -o .libs/libAutoVersioning.so
|
|
/usr/x86_64-pc-linux-gnu/binutils-bin/2.47/ld: .libs/AutoVersioning.o: in function `AutoVersioning::OnProjectLoadingHook(cbProject*, TiXmlElement*, bool)':
|
|
AutoVersioning.cpp:(.text+0x7755): undefined reference to `TiXmlNode::FirstChildElement(char const*) const'
|
|
|
|
$ find /usr/lib64/ -name "libtinyxml.so" | xargs -I {} sh -c 'nm -D --defined-only ${1} 2>/dev/null | grep FirstChildElement && echo ${1}' _ {}
|
|
000000000000db00 T _ZNK11TiXmlHandle17FirstChildElementEPKc
|
|
000000000000dac0 T _ZNK11TiXmlHandle17FirstChildElementEv
|
|
000000000000aa70 T _ZNK9TiXmlNode17FirstChildElementEPKc
|
|
000000000000aa30 T _ZNK9TiXmlNode17FirstChildElementEv
|
|
/usr/lib64/libtinyxml.so
|
|
|
|
Index: src/plugins/contrib/AutoVersioning/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/AutoVersioning/Makefile.am (revision 13854)
|
|
+++ b/gsrc/plugins/contrib/AutoVersioning/Makefile.am (revision 13855)
|
|
@@ -11,6 +11,10 @@
|
|
libAutoVersioning_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libAutoVersioning_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libAutoVersioning_la_SOURCES = AutoVersioning.cpp \
|
|
avChangesDlg.cpp \
|
|
avHeader.cpp \
|
|
Index: src/plugins/contrib/BrowseTracker/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/BrowseTracker/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/BrowseTracker/Makefile.am (revision 13855)
|
|
@@ -11,6 +11,10 @@
|
|
libBrowseTracker_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libBrowseTracker_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libBrowseTracker_la_SOURCES = BrowseTracker.cpp \
|
|
Version.cpp \
|
|
BrowseMarks.cpp \
|
|
Index: src/plugins/contrib/CppCheck/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/CppCheck/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/CppCheck/Makefile.am (revision 13855)
|
|
@@ -13,6 +13,10 @@
|
|
libCppCheck_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libCppCheck_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libCppCheck_la_SOURCES = CppCheck.cpp \
|
|
CppCheckListLog.cpp \
|
|
ConfigPanel.cpp
|
|
Index: src/plugins/contrib/DoxyBlocks/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/DoxyBlocks/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/DoxyBlocks/Makefile.am (revision 13855)
|
|
@@ -11,6 +11,10 @@
|
|
libDoxyBlocks_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libDoxyBlocks_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libDoxyBlocks_la_SOURCES = AutoDoc.cpp \
|
|
Config.cpp \
|
|
ConfigPanel.cpp \
|
|
Index: src/plugins/contrib/EditorConfig/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/EditorConfig/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/EditorConfig/Makefile.am (revision 13855)
|
|
@@ -11,6 +11,10 @@
|
|
libEditorConfig_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libEditorConfig_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libEditorConfig_la_SOURCES = \
|
|
EditorConfigUI.cpp \
|
|
EditorConfig.cpp
|
|
Index: src/plugins/contrib/Valgrind/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/Valgrind/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/Valgrind/Makefile.am (revision 13855)
|
|
@@ -13,6 +13,10 @@
|
|
libValgrind_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libValgrind_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libValgrind_la_SOURCES = Valgrind.cpp \
|
|
ValgrindListLog.cpp \
|
|
valgrind_config.cpp
|
|
Index: src/plugins/contrib/clangd_client/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/clangd_client/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/clangd_client/Makefile.am (revision 13855)
|
|
@@ -36,6 +36,10 @@
|
|
$(WX_LIBS)
|
|
|
|
if ! CODEBLOCKS_NT
|
|
+libclangd_client_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
+if ! CODEBLOCKS_NT
|
|
libclangd_client_la_LIBADD += -lutil
|
|
endif
|
|
|
|
Index: src/plugins/contrib/codesnippets/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/codesnippets/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/codesnippets/Makefile.am (revision 13855)
|
|
@@ -18,6 +18,10 @@
|
|
$(WX_GTK_LIBS) \
|
|
$(WX_X11_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libcodesnippets_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libcodesnippets_la_SOURCES = codesnippets.cpp \
|
|
codesnippetstreectrl.cpp \
|
|
codesnippetswindow.cpp \
|
|
Index: src/plugins/contrib/envvars/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/envvars/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/envvars/Makefile.am (revision 13855)
|
|
@@ -13,6 +13,10 @@
|
|
libenvvars_la_LIBADD = ../../../sdk/libcodeblocks.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libenvvars_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libenvvars_la_SOURCES = envvars.cpp \
|
|
envvars_cfgdlg.cpp \
|
|
envvars_common.cpp \
|
|
Index: src/plugins/contrib/lib_finder/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/lib_finder/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/lib_finder/Makefile.am (revision 13855)
|
|
@@ -17,6 +17,10 @@
|
|
../wxContribItems/wxFlatNotebook/libwxflatnotebook.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+liblib_finder_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
liblib_finder_la_SOURCES = \
|
|
librariesdlg.cpp \
|
|
dirlistdlg.cpp \
|
|
Index: src/plugins/contrib/wxSmithAui/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/wxSmithAui/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/wxSmithAui/Makefile.am (revision 13855)
|
|
@@ -16,6 +16,10 @@
|
|
../wxSmith/libwxsmithlib.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libwxSmithAui_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
EXTRA_DIST = $(srcdir)/images/*.xpm \
|
|
$(srcdir)/images/*.xcf \
|
|
$(srcdir)/wxsmith/*.wxs \
|
|
Index: src/plugins/contrib/wxSmithContribItems/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/wxSmithContribItems/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/wxSmithContribItems/Makefile.am (revision 13855)
|
|
@@ -40,6 +40,10 @@
|
|
../wxContribItems/wxmathplot/libwxmathplot.la \
|
|
$(WX_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libwxsmithcontribitems_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
EXTRA_DIST = $(srcdir)/wxchart/*.xpm \
|
|
$(srcdir)/wxchart/*.png \
|
|
$(srcdir)/wximagebutton/*.xpm \
|
|
Index: src/plugins/contrib/SpellChecker/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/SpellChecker/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/SpellChecker/Makefile.am (revision 13855)
|
|
@@ -17,6 +17,10 @@
|
|
$(WX_LIBS) \
|
|
$(CB_HUNSPELL_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libSpellChecker_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libSpellChecker_la_SOURCES = DictionariesNeededDialog.cpp \
|
|
MySpellingDialog.cpp \
|
|
OnlineSpellChecker.cpp \
|
|
Index: src/plugins/contrib/source_exporter/Makefile.am
|
|
===================================================================
|
|
--- a/src/plugins/contrib/source_exporter/Makefile.am (revision 13854)
|
|
+++ b/src/plugins/contrib/source_exporter/Makefile.am (revision 13855)
|
|
@@ -18,6 +18,10 @@
|
|
wxPdfDocument/libwxPdfDocument.la \
|
|
$(WX_LIBS) $(CB_FONTCONFIG_LIBS)
|
|
|
|
+if ! CODEBLOCKS_NT
|
|
+libexporter_la_LIBADD += $(CB_TINYXML_LIBS)
|
|
+endif
|
|
+
|
|
libexporter_la_SOURCES = BaseExporter.cpp \
|
|
exporter.cpp \
|
|
HTMLExporter.cpp \
|