This is a bit of a strange combination that is likely not affecting many others. But if one has misc/compat9x-amd64, then during 'make configure' (when WRKSRC/qt/configure builds a local qmake), this happens: . . g++12 -o "/z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake" project.o property.o main.o makefile.o unixmake2.o unixmake.o mingw_make.o option.o winmakefile.o projectgenerator.o meta.o makefiledeps.o metamakefile.o xmloutput.o pbuilder_pbx.o borland_bmake.o msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o symmake.o initprojectdeploy_symbian.o symmake_abld.o symmake_sbsv2.o symbiancommon.o registry.o epocroot.o gbuild.o qtextcodec.o qutfcodec.o qstring.o qtextstream.o qiodevice.o qmalloc.o qglobal.o qbytearray.o qbytearraymatcher.o qdatastream.o qbuffer.o qlist.o qfile.o qfilesystementry.o qfilesystemengine_unix.o qfilesystemengine.o qfilesystemiterator_unix.o qfsfileengine_unix.o qfsfileengine.o qfsfileengine_iterator.o qregexp.o qvector.o qbitarray.o qdir.o qdiriterator.o quuid.o qhash.o qfileinfo.o qdatetime.o qstringlist.o qabstractfileengine.o qtemporaryfile.o qmap.o qmetatype.o qsettings.o qsystemerror.o qlibraryinfo.o qvariant.o qvsnprintf.o qlocale.o qlocale_tools.o qlocale_unix.o qlinkedlist.o qnumeric.o qcryptographichash.o qxmlstream.o qxmlutils.o gmake[1]: Leaving directory '/z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/qmake' ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found ld-elf.so.1: /usr/local/lib/compat/libstdc++.so.6: version CXXABI_1.3.8 required by /z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/bin/qmake not found Iconv support cannot be enabled due to functionality tests! Turn on verbose messaging (-v) to ./../../qt/configure to see the final report. If you believe this message is in error you may use the continue switch (-continue) to ./../../qt/configure to continue. ===> Script "../../qt/configure" failed unexpectedly. Please report the problem to pi@FreeBSD.org [maintainer] and attach the "/z1/local/users/jhein/.nobak/wd/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/config.log" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. a /usr/local/sbin/pkg-static info -g -Ea). *** Error code 1 Stop. make: stopped in /usr/ports/converters/wkhtmltopdf
Moving /usr/local/lib/compat/libstdc++.so.6 away (e.g., to /usr/local/lib/compat/libstdc++.so.6.mv} temporarily allows the 'make configure' to succeed. Also setting LD_LIBRARY_PATH=/usr/local/lib/gcc12 also allows 'make configure' to succeed. The work dir build of qmake ("Creating qmake") should really be built (linked) with a rpath specification that points to the right libstdc++.so.6. There are other libstdc++.so.6 in /usr/local (e.g., if you have gcc10 or gcc11 installed) that could in theory be incompatible if the run-time linker uses those versions instead of the libstdc++.so.6 in /usr/local/lib/gcc12/. Otherwise (if no rpath is specified), the generated qmake is at the mercy of the ldconfig globale search order (run 'ldconfig -r | grep -e search -e libstdc' on a system with various misc/compat* and lang/gcc* ports installed). So while this is a bit of an edge case, and it's not clear it's worth time to fix this one case (esp. since wkhtmltopdf's days are now numbered), it is a reminder that it is good practice when building with lang/gcc* that you should link with --rpath for shared libraries from LOCALBASE/lib/gcc*. How you get wkhtmltopdf to use --rpath when it builds its local copy of qmake, I don't know at this time. I may just close this bug with "edge case not likely to affect most people" rather than dig into the strange and wonderful world of building with qt. But I'll let this bug description soak for a day or two. Maybe this affects more qt-based ports? Maybe more ports that use qt and qmake and a ports version of gcc could be helped with a change to Uses/qt*.mk to use --rpath??
The error message "converters/wkhtmltopdf: 'make configure' error due to qmake linked with wrong libstdc++.so.6" indicates that the qmake tool used to build wkhtmltopdf is linked with the wrong version of the C++ standard library (libstdc++.so.6). This can happen if you have multiple versions of the library installed on your system. https://trafficjam3d.com
(In reply to Theadisfat from comment #3) Yes, as already explained, it is indeed linking (at run time) with the wrong libstdc++.so.6. And, yes, the system does have more than one installed - legitimately. And it's a bit of "luck" as to which one it picks at run time. The ldconfig search path has to be set to something, and the "something" it was set to is wrong for this case. It would be good if the qmake image used --rpath to point to the right libstdtc++.so.6 (the one it linked with at build time).