puzzlepaint / surfelmeshing

Real-time surfel-based mesh reconstruction from RGB-D video.
BSD 3-Clause "New" or "Revised" License
420 stars 83 forks source link

Error Linking Surfelmeshing Binary #18

Open captain-pool opened 3 years ago

captain-pool commented 3 years ago

Hey @puzzlepaint , I have been trying to build your project, but the build is failing every single time due to some Linker Failure. I'm not sure how to debug it, can you please help out? I'm on Nvidia Docker, so CUDA version, OS and Qt version is not an issue. But I still keep on failing. I'm down with any configuration that works. Here's the Dockerfile

These are the configurations that I tried:

  1. Ubuntu 16.04 with CUDA 10.1 and Qt 5.9.1 : Failed due to linker error (Something similar to the bottom, but it was 55 inplace of 52)
  2. Ubuntu 14.04 with CUDA 8.0 and Qt 5.2.1: QOpenGLWidget not found
  3. Ubuntu 14.04 with CUDA 8.0 and Qt5.4.1: Was having an issue similar to #10
  4. Ubuntu 14.04 with CUDA 8.0 at Qt 5.10.1 (as mentioned in #10): Here's the log

I googled everywhere, but couldn't find something that helps. :disappointed:

[ 98%] Linking CUDA device code CMakeFiles/SurfelMeshing.dir/cmake_device_link.o
[100%] Linking CXX executable SurfelMeshing

/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::~QIcuTimeZonePrivate()':
qtimezoneprivate_icu.cpp:(.text+0x23): undefined reference to `ucal_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::~QIcuTimeZonePrivate()':
qtimezoneprivate_icu.cpp:(.text+0x43): undefined reference to `ucal_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::isDaylightTime(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x7a): undefined reference to `ucal_clone_52'
qtimezoneprivate_icu.cpp:(.text+0xae): undefined reference to `ucal_setMillis_52'
qtimezoneprivate_icu.cpp:(.text+0xbd): undefined reference to `ucal_close_52'
qtimezoneprivate_icu.cpp:(.text+0xde): undefined reference to `ucal_inDaylightTime_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::hasDaylightTime() const':
qtimezoneprivate_icu.cpp:(.text+0x127): undefined reference to `ucal_getDSTSavings_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::clone() const':
qtimezoneprivate_icu.cpp:(.text+0x192): undefined reference to `ucal_clone_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::standardTimeOffset(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x1fa): undefined reference to `ucal_clone_52'
qtimezoneprivate_icu.cpp:(.text+0x230): undefined reference to `ucal_setMillis_52'
qtimezoneprivate_icu.cpp:(.text+0x23f): undefined reference to `ucal_close_52'
qtimezoneprivate_icu.cpp:(.text+0x268): undefined reference to `ucal_get_52'
qtimezoneprivate_icu.cpp:(.text+0x294): undefined reference to `ucal_get_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::daylightTimeOffset(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x2ba): undefined reference to `ucal_clone_52'
qtimezoneprivate_icu.cpp:(.text+0x2ee): undefined reference to `ucal_setMillis_52'
qtimezoneprivate_icu.cpp:(.text+0x2ff): undefined reference to `ucal_close_52'
qtimezoneprivate_icu.cpp:(.text+0x323): undefined reference to `ucal_get_52'
qtimezoneprivate_icu.cpp:(.text+0x346): undefined reference to `ucal_get_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::offsetFromUtc(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x37e): undefined reference to `ucal_clone_52'
qtimezoneprivate_icu.cpp:(.text+0x3bc): undefined reference to `ucal_setMillis_52'
qtimezoneprivate_icu.cpp:(.text+0x3cb): undefined reference to `ucal_close_52'
qtimezoneprivate_icu.cpp:(.text+0x3f9): undefined reference to `ucal_get_52'
qtimezoneprivate_icu.cpp:(.text+0x429): undefined reference to `ucal_get_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `ucalTimeZoneDisplayName(void**, QTimeZone::TimeType, QTimeZone::NameType, QString const&)':
qtimezoneprivate_icu.cpp:(.text+0x516): undefined reference to `ucal_getTimeZoneDisplayName_52'
qtimezoneprivate_icu.cpp:(.text+0x667): undefined reference to `ucal_getTimeZoneDisplayName_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::abbreviation(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x7aa): undefined reference to `ucal_clone_52'
qtimezoneprivate_icu.cpp:(.text+0x897): undefined reference to `ucal_setMillis_52'
qtimezoneprivate_icu.cpp:(.text+0x8a7): undefined reference to `ucal_close_52'
qtimezoneprivate_icu.cpp:(.text+0x8bf): undefined reference to `ucal_inDaylightTime_52'
qtimezoneprivate_icu.cpp:(.text+0x8ca): undefined reference to `ucal_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::data(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x9a0): undefined reference to `ucal_clone_52'
qtimezoneprivate_icu.cpp:(.text+0xa34): undefined reference to `ucal_setMillis_52'
qtimezoneprivate_icu.cpp:(.text+0xa4f): undefined reference to `ucal_close_52'
qtimezoneprivate_icu.cpp:(.text+0xa84): undefined reference to `ucal_get_52'
qtimezoneprivate_icu.cpp:(.text+0xabd): undefined reference to `ucal_get_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::displayName(QTimeZone::TimeType, QTimeZone::NameType, QLocale const&) const':
qtimezoneprivate_icu.cpp:(.text+0xbd8): undefined reference to `ucal_getDSTSavings_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::systemTimeZoneId() const':
qtimezoneprivate_icu.cpp:(.text+0xc90): undefined reference to `ucal_getDefaultTimeZone_52'
qtimezoneprivate_icu.cpp:(.text+0xd60): undefined reference to `ucal_getDefaultTimeZone_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::QIcuTimeZonePrivate(QIcuTimeZonePrivate const&)':
qtimezoneprivate_icu.cpp:(.text+0xdf2): undefined reference to `ucal_clone_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::init(QByteArray const&)':
qtimezoneprivate_icu.cpp:(.text+0xed4): undefined reference to `ucal_open_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::QIcuTimeZonePrivate()':
qtimezoneprivate_icu.cpp:(.text+0x10e7): undefined reference to `ucal_getDefaultTimeZone_52'
qtimezoneprivate_icu.cpp:(.text+0x11f0): undefined reference to `ucal_getDefaultTimeZone_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `uenumToIdList(UEnumeration*)':
qtimezoneprivate_icu.cpp:(.text+0x12c5): undefined reference to `uenum_next_52'
qtimezoneprivate_icu.cpp:(.text+0x17ad): undefined reference to `uenum_next_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::availableTimeZoneIds() const':
qtimezoneprivate_icu.cpp:(.text+0x1df8): undefined reference to `ucal_openTimeZones_52'
qtimezoneprivate_icu.cpp:(.text+0x1e14): undefined reference to `uenum_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::availableTimeZoneIds(QLocale::Country) const':
qtimezoneprivate_icu.cpp:(.text+0x1eea): undefined reference to `ucal_openCountryTimeZones_52'
qtimezoneprivate_icu.cpp:(.text+0x1f06): undefined reference to `uenum_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::availableTimeZoneIds(int) const':
qtimezoneprivate_icu.cpp:(.text+0x2018): undefined reference to `ucal_openTimeZoneIDEnumeration_52'
qtimezoneprivate_icu.cpp:(.text+0x2035): undefined reference to `uenum_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::QIcuTimeZonePrivate(QByteArray const&)':
qtimezoneprivate_icu.cpp:(.text+0x20d7): undefined reference to `ucal_openTimeZones_52'
qtimezoneprivate_icu.cpp:(.text+0x20f6): undefined reference to `uenum_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `ucalDaylightOffset(QByteArray const&)':
qtimezoneprivate_icu.cpp:(.text.unlikely+0x16): undefined reference to `ucal_getDSTSavings_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `safe_pcre2_match_16(pcre2_real_code_16 const*, unsigned short const*, int, int, int, pcre2_real_match_data_16*, pcre2_real_match_context_16*)':
qregularexpression.cpp:(.text+0x1fd): undefined reference to `pcre2_match_16'
qregularexpression.cpp:(.text+0x267): undefined reference to `pcre2_jit_stack_create_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::~QRegularExpressionPrivate()':
qregularexpression.cpp:(.text+0x459): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::cleanCompiledPattern()':
qregularexpression.cpp:(.text+0x549): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::getPatternInfo()':
qregularexpression.cpp:(.text+0x597): undefined reference to `pcre2_pattern_info_16'
qregularexpression.cpp:(.text+0x5a8): undefined reference to `pcre2_pattern_info_16'
qregularexpression.cpp:(.text+0x5cc): undefined reference to `pcre2_pattern_info_16'
qregularexpression.cpp:(.text+0x5e9): undefined reference to `pcre2_config_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::compilePattern()':
qregularexpression.cpp:(.text+0x6fa): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x7ab): undefined reference to `pcre2_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::optimizePattern(QRegularExpressionPrivate::OptimizePatternOption)':
qregularexpression.cpp:(.text+0x9ca): undefined reference to `pcre2_jit_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::captureIndexForName(QStringView) const':
qregularexpression.cpp:(.text+0xa71): undefined reference to `pcre2_substring_number_from_name_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::~QRegularExpression()':
qregularexpression.cpp:(.text+0xce0): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::operator=(QRegularExpression const&)':
qregularexpression.cpp:(.text+0xd99): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::setPattern(QString const&)':
qregularexpression.cpp:(.text+0xeef): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::setPatternOptions(QFlags<QRegularExpression::PatternOption>)':
qregularexpression.cpp:(.text+0x106f): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::captureCount() const':
qregularexpression.cpp:(.text+0x115f): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x1215): undefined reference to `pcre2_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::isValid() const':
qregularexpression.cpp:(.text+0x132f): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x13e5): undefined reference to `pcre2_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::errorString() const':
qregularexpression.cpp:(.text+0x1526): undefined reference to `pcre2_get_error_message_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::patternErrorOffset() const':
qregularexpression.cpp:(.text+0x16af): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x1765): undefined reference to `pcre2_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::optimize() const':
qregularexpression.cpp:(.text+0x186f): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x1925): undefined reference to `pcre2_compile_16'
qregularexpression.cpp:(.text+0x1a0d): undefined reference to `pcre2_jit_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::~QRegularExpressionMatch()':
qregularexpression.cpp:(.text+0x1eaf): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::operator=(QRegularExpressionMatch const&)':
qregularexpression.cpp:(.text+0x2036): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::captured(QString const&) const':
qregularexpression.cpp:(.text+0x22ff): undefined reference to `pcre2_substring_number_from_name_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedRef(QString const&) const':
qregularexpression.cpp:(.text+0x23f3): undefined reference to `pcre2_substring_number_from_name_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::captured(QStringView) const':
qregularexpression.cpp:(.text+0x24e5): undefined reference to `pcre2_substring_number_from_name_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedRef(QStringView) const':
qregularexpression.cpp:(.text+0x25c9): undefined reference to `pcre2_substring_number_from_name_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedView(QStringView) const':
qregularexpression.cpp:(.text+0x26c5): undefined reference to `pcre2_substring_number_from_name_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o):qregularexpression.cpp:(.text+0x284a): more undefined references to `pcre2_substring_number_from_name_16' follow
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::~QRegularExpressionMatchIterator()':
qregularexpression.cpp:(.text+0x2d33): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x2e11): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::operator=(QRegularExpressionMatchIterator const&)':
qregularexpression.cpp:(.text+0x2f92): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x307c): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `operator>>(QDataStream&, QRegularExpression&)':
qregularexpression.cpp:(.text+0x33e7): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o):qregularexpression.cpp:(.text+0x34fe): more undefined references to `pcre2_code_free_16' follow
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::doMatch(QString const&, int, int, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>, QRegularExpressionPrivate::CheckSubjectStringOption, QRegularExpressionMatchPrivate const*) const':
qregularexpression.cpp:(.text+0x48d6): undefined reference to `pcre2_match_context_create_16'
qregularexpression.cpp:(.text+0x48ec): undefined reference to `pcre2_jit_stack_assign_16'
qregularexpression.cpp:(.text+0x48f7): undefined reference to `pcre2_match_data_create_from_pattern_16'
qregularexpression.cpp:(.text+0x49af): undefined reference to `pcre2_get_ovector_pointer_16'
qregularexpression.cpp:(.text+0x4a22): undefined reference to `pcre2_match_data_free_16'
qregularexpression.cpp:(.text+0x4a2c): undefined reference to `pcre2_match_context_free_16'
qregularexpression.cpp:(.text+0x4a5d): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x4cff): undefined reference to `pcre2_pattern_info_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::match(QString const&, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const':
qregularexpression.cpp:(.text+0x4e42): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x4f09): undefined reference to `pcre2_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::match(QStringRef const&, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const':
qregularexpression.cpp:(.text+0x5079): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x5143): undefined reference to `pcre2_compile_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::globalMatch(QString const&, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const':
qregularexpression.cpp:(.text+0x5432): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::next()':
qregularexpression.cpp:(.text+0x55e2): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x56bc): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x57e2): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x594d): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o):qregularexpression.cpp:(.text+0x5a60): more undefined references to `pcre2_code_free_16' follow
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::namedCaptureGroups() const':
qregularexpression.cpp:(.text+0x6538): undefined reference to `pcre2_pattern_info_16'
qregularexpression.cpp:(.text+0x654d): undefined reference to `pcre2_pattern_info_16'
qregularexpression.cpp:(.text+0x6564): undefined reference to `pcre2_pattern_info_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::QRegularExpressionMatch()':
qregularexpression.cpp:(.text+0x69be): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::QRegularExpressionMatchIterator()':
qregularexpression.cpp:(.text+0x6bf0): undefined reference to `pcre2_code_free_16'
qregularexpression.cpp:(.text+0x6c6f): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `safe_pcre2_match_16(pcre2_real_code_16 const*, unsigned short const*, int, int, int, pcre2_real_match_data_16*, pcre2_real_match_context_16*)':
qregularexpression.cpp:(.text+0x2bf): undefined reference to `pcre2_match_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QThreadStorage<QPcreJitStackPointer*>::deleteData(void*)':
qregularexpression.cpp:(.text._ZN14QThreadStorageIP20QPcreJitStackPointerE10deleteDataEPv[_ZN14QThreadStorageIP20QPcreJitStackPointerE10deleteDataEPv]+0x12): undefined reference to `pcre2_jit_stack_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QExplicitlySharedDataPointer<QRegularExpressionPrivate>::~QExplicitlySharedDataPointer()':
qregularexpression.cpp:(.text._ZN28QExplicitlySharedDataPointerI25QRegularExpressionPrivateED2Ev[_ZN28QExplicitlySharedDataPointerI25QRegularExpressionPrivateED5Ev]+0x20): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QSharedDataPointer<QRegularExpressionMatchPrivate>::~QSharedDataPointer()':
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateED2Ev[_ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateED5Ev]+0x7f): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qregularexpression.o): In function `QSharedDataPointer<QRegularExpressionMatchPrivate>::detach_helper()':
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateE13detach_helperEv[_ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateE13detach_helperEv]+0x114): undefined reference to `pcre2_code_free_16'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qlocale_icu.o): In function `QIcu::toUpper(QByteArray const&, QString const&, bool*)':
qlocale_icu.cpp:(.text+0xad): undefined reference to `u_strToUpper_52'
qlocale_icu.cpp:(.text+0x1d6): undefined reference to `u_strToUpper_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qlocale_icu.o): In function `QIcu::toLower(QByteArray const&, QString const&, bool*)':
qlocale_icu.cpp:(.text+0x2ed): undefined reference to `u_strToLower_52'
qlocale_icu.cpp:(.text+0x416): undefined reference to `u_strToLower_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qcollator_icu.o): In function `QCollatorPrivate::init()':
qcollator_icu.cpp:(.text+0x15): undefined reference to `ucol_close_52'
qcollator_icu.cpp:(.text+0x99): undefined reference to `ucol_open_52'
qcollator_icu.cpp:(.text+0x151): undefined reference to `ucol_setAttribute_52'
qcollator_icu.cpp:(.text+0x176): undefined reference to `ucol_setAttribute_52'
qcollator_icu.cpp:(.text+0x1e1): undefined reference to `ucol_setAttribute_52'
qcollator_icu.cpp:(.text+0x24e): undefined reference to `ucol_setAttribute_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qcollator_icu.o): In function `QCollatorPrivate::cleanup()':
qcollator_icu.cpp:(.text+0x2ee): undefined reference to `ucol_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::sortKey(QString const&) const':
qcollator_icu.cpp:(.text+0x5f7): undefined reference to `ucol_getSortKey_52'
qcollator_icu.cpp:(.text+0x658): undefined reference to `ucol_getSortKey_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::compare(QChar const*, int, QChar const*, int) const':
qcollator_icu.cpp:(.text+0x33e): undefined reference to `ucol_strcoll_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::compare(QString const&, QString const&) const':
qcollator_icu.cpp:(.text+0x3d7): undefined reference to `ucol_strcoll_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::compare(QStringRef const&, QStringRef const&) const':
qcollator_icu.cpp:(.text+0x4a3): undefined reference to `ucol_strcoll_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::mibEnum() const':
qicucodec.cpp:(.text+0x4c): undefined reference to `ucnv_compareNames_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `qTextCodecNameMatch(char const*, char const*)':
qicucodec.cpp:(.text+0xe5): undefined reference to `ucnv_compareNames_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::getConverter(QTextCodec::ConverterState*) const':
qicucodec.cpp:(.text+0x173): undefined reference to `ucnv_open_52'
qicucodec.cpp:(.text+0x18d): undefined reference to `ucnv_setSubstChars_52'
qicucodec.cpp:(.text+0x199): undefined reference to `u_errorName_52'
qicucodec.cpp:(.text+0x215): undefined reference to `ucnv_open_52'
qicucodec.cpp:(.text+0x23f): undefined reference to `ucnv_setSubstChars_52'
qicucodec.cpp:(.text+0x24b): undefined reference to `u_errorName_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::convertFromUnicode(QChar const*, int, QTextCodec::ConverterState*) const':
qicucodec.cpp:(.text+0x2eb): undefined reference to `ucnv_getMaxCharSize_52'
qicucodec.cpp:(.text+0x384): undefined reference to `ucnv_fromUnicode_52'
qicucodec.cpp:(.text+0x391): undefined reference to `u_errorName_52'
qicucodec.cpp:(.text+0x491): undefined reference to `ucnv_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::convertToUnicode(char const*, int, QTextCodec::ConverterState*) const':
qicucodec.cpp:(.text+0x564): undefined reference to `ucnv_toUnicode_52'
qicucodec.cpp:(.text+0x609): undefined reference to `u_errorName_52'
qicucodec.cpp:(.text+0x67a): undefined reference to `ucnv_close_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::codecForNameUnlocked(char const*)':
qicucodec.cpp:(.text+0x727): undefined reference to `ucnv_getStandardName_52'
qicucodec.cpp:(.text+0x752): undefined reference to `ucnv_getStandardName_52'
qicucodec.cpp:(.text+0x856): undefined reference to `ucnv_compareNames_52'
qicucodec.cpp:(.text+0x8d8): undefined reference to `ucnv_compareNames_52'
qicucodec.cpp:(.text+0x1181): undefined reference to `ucnv_open_52'
qicucodec.cpp:(.text+0x1192): undefined reference to `ucnv_close_52'
qicucodec.cpp:(.text+0x1321): undefined reference to `u_errorName_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::defaultCodecUnlocked()':
qicucodec.cpp:(.text+0x14e1): undefined reference to `ucnv_getDefaultName_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::availableCodecs()':
qicucodec.cpp:(.text+0x181e): undefined reference to `ucnv_countAvailable_52'
qicucodec.cpp:(.text+0x185e): undefined reference to `ucnv_getStandardName_52'
qicucodec.cpp:(.text+0x1880): undefined reference to `ucnv_getAvailableName_52'
qicucodec.cpp:(.text+0x18a0): undefined reference to `ucnv_getStandardName_52'
qicucodec.cpp:(.text+0x18c3): undefined reference to `ucnv_countAliases_52'
qicucodec.cpp:(.text+0x18f9): undefined reference to `ucnv_getAlias_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::aliases() const':
qicucodec.cpp:(.text+0x1a2e): undefined reference to `ucnv_countAliases_52'
qicucodec.cpp:(.text+0x1a83): undefined reference to `ucnv_getAlias_52'
/usr/local/Qt-5.10.1/lib/libQt5Core.a(qicucodec.o): In function `qIcuCodecStateFree(QTextCodec::ConverterState*)':
qicucodec.cpp:(.text+0xa5): undefined reference to `ucnv_close_52'
collect2: error: ld returned 1 exit status
make[3]: *** [applications/surfel_meshing/SurfelMeshing] Error 1
make[2]: *** [applications/surfel_meshing/CMakeFiles/SurfelMeshing.dir/all] Error 2
make[1]: *** [applications/surfel_meshing/CMakeFiles/SurfelMeshing.dir/rule] Error 2
make: *** [SurfelMeshing] Error 2
puzzlepaint commented 3 years ago

Hi, looking at #10 again and at the Readme, it appears that the Readme specifies a wrong "known working" version for Qt. Sorry for that, I will remove this.

It should work with the newer Qt versions however. Looking over the linker errors that you got, I think that those come from Qt. None of the missing symbols seems like something that is directly used in SurfelMeshing, and all seem to originate from Qt source files. I think that those could be likely fixed by either: