Comments (9)
I am very interested in how to statically link everything too, but have not had much success in my limited experiments. I hope someone chimes in
from qml.
You need to have Qt statically compiled. I managed to build single static Qt/QML binary for Linux and Windows (i686-w64-mingw32) for my project here https://github.com/gen2brain/cbconvert . You can see build details in gui/make.bash . I also had to fiddle with pkgconfig files a lot.
And I needed this patch #163 to be able to also add qml modules to binary.
Windows binary is actually a full static binary, Linux binary is not fully static, it doesn't link to static libc and libGL, X libs etc. but it doesn't require Qt, and binary is more portable if you doesn't link libc statically.
from qml.
I hope someone will post a solution that works in Windows too...
Il 19 apr 2016 10:30 PM, "Michael Andersen" [email protected] ha
scritto:
I am very interested in how to statically link everything too, but have
not had much success in my limited experiments. I hope someone chimes in—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#174 (comment)
from qml.
@immesys @neclepsio Did you guys try the above build flags? If you aren't using OSX and have GCC installed then that flag should build the static type for you. My issue I think is because OSX has the Clang "imposter" instead of actual GCC, and Clang doesn't support that library.
from qml.
With GCC, I'm still getting:
$ go build --ldflags '-extldflags "-static"'
# github.com/go-qml/qml/examples/controls/basiclayouts
/usr/lib/go/pkg/tool/linux_amd64/link: running g++ failed: exit status 1
/usr/bin/ld: cannot find -lQt5Widgets
/usr/bin/ld: cannot find -lQt5Quick
/usr/bin/ld: cannot find -lQt5Gui
/usr/bin/ld: cannot find -lQt5Qml
/usr/bin/ld: cannot find -lQt5Network
/usr/bin/ld: cannot find -lQt5Core
collect2: error: ld returned 1 exit status
Seems that QT needs to be compiled statically. Tried to do it but the qtquickcontrols
module is skipped and I get:
$ go build --ldflags '-extldflags "-static -L/home/simon/projects/qt5/lib"'
# github.com/go-qml/qml/examples/controls/basiclayouts
/usr/lib/go/pkg/tool/linux_amd64/link: running g++ failed: exit status 1
/usr/bin/ld: cannot find -lQt5Quick
/home/simon/projects/qt5/lib/libQt5Core.a(qfilesystemengine_unix.o): In function `QFileSystemEngine::resolveGroupName(unsigned int)':
qfilesystemengine_unix.cpp:(.text+0x79d): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/home/simon/projects/qt5/lib/libQt5Widgets.a(qfiledialog.o): In function `qt_tildeExpansion(QString const&, bool*)':
qfiledialog.cpp:(.text+0x7e4d): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/home/simon/projects/qt5/lib/libQt5Core.a(qfilesystemengine_unix.o): In function `QFileSystemEngine::resolveUserName(unsigned int)':
qfilesystemengine_unix.cpp:(.text+0x465): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/home/simon/projects/qt5/lib/libQt5Network.a(qhostinfo_unix.o): In function `QHostInfoAgent::fromName(QString const&)':
qhostinfo_unix.cpp:(.text+0x47e): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
collect2: error: ld returned 1 exit status
from qml.
@gen2brain Thanks for your answer! I compiled QT statically, but when I try to build my app I get:
# github.com/ProtonMail/Desktop-Import/frontend
/usr/lib/go/pkg/tool/linux_amd64/link: running g++ failed: exit status 1
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qfontengine.o): In function `QFontEngine::supportsScript(QChar::Script) const':
qfontengine.cpp:(.text+0x3dc8): undefined reference to `hb_ot_tags_from_script'
qfontengine.cpp:(.text+0x3ddc): undefined reference to `hb_ot_layout_table_find_script'
qfontengine.cpp:(.text+0x3f20): undefined reference to `hb_ot_layout_table_find_script'
qfontengine.cpp:(.text+0x3f4e): undefined reference to `hb_ot_layout_table_find_script'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qtextengine.o): In function `QTextEngine::shapeTextWithHarfbuzzNG(QScriptItem const&, unsigned short const*, int, QFontEngine*, QVector<unsigned int> const&, bool, bool) const':
qtextengine.cpp:(.text+0x347a): undefined reference to `hb_buffer_create'
qtextengine.cpp:(.text+0x3492): undefined reference to `hb_buffer_set_unicode_funcs'
qtextengine.cpp:(.text+0x349d): undefined reference to `hb_buffer_pre_allocate'
qtextengine.cpp:(.text+0x34a5): undefined reference to `hb_buffer_allocation_successful'
qtextengine.cpp:(.text+0x3645): undefined reference to `hb_buffer_clear_contents'
qtextengine.cpp:(.text+0x366e): undefined reference to `hb_buffer_add_utf16'
qtextengine.cpp:(.text+0x367e): undefined reference to `hb_buffer_set_segment_properties'
qtextengine.cpp:(.text+0x3686): undefined reference to `hb_buffer_guess_segment_properties'
qtextengine.cpp:(.text+0x36a0): undefined reference to `hb_buffer_set_flags'
qtextengine.cpp:(.text+0x3797): undefined reference to `hb_shape_full'
qtextengine.cpp:(.text+0x37c6): undefined reference to `hb_buffer_get_length'
qtextengine.cpp:(.text+0x38d0): undefined reference to `hb_buffer_get_glyph_infos'
qtextengine.cpp:(.text+0x38df): undefined reference to `hb_buffer_get_glyph_positions'
qtextengine.cpp:(.text+0x3cf9): undefined reference to `hb_buffer_destroy'
qtextengine.cpp:(.text+0x3ead): undefined reference to `hb_buffer_destroy'
qtextengine.cpp:(.text+0x3f4c): undefined reference to `hb_buffer_reverse'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `_hb_qt_font_get_glyph_h_kerning(hb_font_t*, void*, unsigned int, unsigned int, void*)':
qharfbuzzng.cpp:(.text+0x38e): undefined reference to `hb_font_get_user_data'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `_hb_qt_font_get_glyph_h_advance(hb_font_t*, void*, unsigned int, void*)':
qharfbuzzng.cpp:(.text+0x3f0): undefined reference to `hb_font_get_user_data'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `_hb_qt_reference_table(hb_face_t*, unsigned int, void*)':
qharfbuzzng.cpp:(.text+0x498): undefined reference to `hb_blob_create'
qharfbuzzng.cpp:(.text+0x4b1): undefined reference to `hb_blob_get_empty'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `(anonymous namespace)::Q_QGS_qt_ufuncs::innerFunction()::Holder::~Holder()':
qharfbuzzng.cpp:(.text+0x508): undefined reference to `hb_unicode_funcs_destroy'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `(anonymous namespace)::Q_QGS_qt_ffuncs::innerFunction()::Holder::~Holder()':
qharfbuzzng.cpp:(.text+0x538): undefined reference to `hb_font_funcs_destroy'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `hb_qt_get_unicode_funcs()':
qharfbuzzng.cpp:(.text+0xceb): undefined reference to `hb_unicode_funcs_create'
qharfbuzzng.cpp:(.text+0xd05): undefined reference to `hb_unicode_funcs_set_combining_class_func'
qharfbuzzng.cpp:(.text+0xd1c): undefined reference to `hb_unicode_funcs_set_eastasian_width_func'
qharfbuzzng.cpp:(.text+0xd33): undefined reference to `hb_unicode_funcs_set_general_category_func'
qharfbuzzng.cpp:(.text+0xd4a): undefined reference to `hb_unicode_funcs_set_mirroring_func'
qharfbuzzng.cpp:(.text+0xd61): undefined reference to `hb_unicode_funcs_set_script_func'
qharfbuzzng.cpp:(.text+0xd78): undefined reference to `hb_unicode_funcs_set_compose_func'
qharfbuzzng.cpp:(.text+0xd8f): undefined reference to `hb_unicode_funcs_set_decompose_func'
qharfbuzzng.cpp:(.text+0xda6): undefined reference to `hb_unicode_funcs_set_decompose_compatibility_func'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `hb_qt_font_get_use_design_metrics(hb_font_t*)':
qharfbuzzng.cpp:(.text+0xe1c): undefined reference to `hb_font_get_user_data'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `hb_qt_get_font_funcs()':
qharfbuzzng.cpp:(.text+0xe79): undefined reference to `hb_font_funcs_create'
qharfbuzzng.cpp:(.text+0xe93): undefined reference to `hb_font_funcs_set_glyph_func'
qharfbuzzng.cpp:(.text+0xeaa): undefined reference to `hb_font_funcs_set_glyph_h_advance_func'
qharfbuzzng.cpp:(.text+0xec1): undefined reference to `hb_font_funcs_set_glyph_v_advance_func'
qharfbuzzng.cpp:(.text+0xed8): undefined reference to `hb_font_funcs_set_glyph_h_origin_func'
qharfbuzzng.cpp:(.text+0xeef): undefined reference to `hb_font_funcs_set_glyph_v_origin_func'
qharfbuzzng.cpp:(.text+0xf06): undefined reference to `hb_font_funcs_set_glyph_h_kerning_func'
qharfbuzzng.cpp:(.text+0xf1d): undefined reference to `hb_font_funcs_set_glyph_v_kerning_func'
qharfbuzzng.cpp:(.text+0xf34): undefined reference to `hb_font_funcs_set_glyph_extents_func'
qharfbuzzng.cpp:(.text+0xf4b): undefined reference to `hb_font_funcs_set_glyph_contour_point_func'
qharfbuzzng.cpp:(.text+0xf62): undefined reference to `hb_font_funcs_set_glyph_name_func'
qharfbuzzng.cpp:(.text+0xf79): undefined reference to `hb_font_funcs_set_glyph_from_name_func'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `hb_qt_face_get_for_engine(QFontEngine*)':
qharfbuzzng.cpp:(.text+0x1004): undefined reference to `hb_face_create_for_tables'
qharfbuzzng.cpp:(.text+0x100f): undefined reference to `hb_face_is_immutable'
qharfbuzzng.cpp:(.text+0x1059): undefined reference to `hb_face_set_index'
qharfbuzzng.cpp:(.text+0x10e5): undefined reference to `hb_face_set_upem'
qharfbuzzng.cpp:(.text+0x1130): undefined reference to `hb_face_destroy'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `hb_qt_font_get_for_engine(QFontEngine*)':
qharfbuzzng.cpp:(.text+0x117b): undefined reference to `hb_font_create'
qharfbuzzng.cpp:(.text+0x1186): undefined reference to `hb_font_is_immutable'
qharfbuzzng.cpp:(.text+0x11e8): undefined reference to `hb_font_set_funcs'
qharfbuzzng.cpp:(.text+0x11fe): undefined reference to `hb_font_set_scale'
qharfbuzzng.cpp:(.text+0x120c): undefined reference to `hb_font_set_ppem'
qharfbuzzng.cpp:(.text+0x1251): undefined reference to `hb_font_funcs_create'
qharfbuzzng.cpp:(.text+0x126b): undefined reference to `hb_font_funcs_set_glyph_func'
qharfbuzzng.cpp:(.text+0x1282): undefined reference to `hb_font_funcs_set_glyph_h_advance_func'
qharfbuzzng.cpp:(.text+0x1299): undefined reference to `hb_font_funcs_set_glyph_v_advance_func'
qharfbuzzng.cpp:(.text+0x12b0): undefined reference to `hb_font_funcs_set_glyph_h_origin_func'
qharfbuzzng.cpp:(.text+0x12c7): undefined reference to `hb_font_funcs_set_glyph_v_origin_func'
qharfbuzzng.cpp:(.text+0x12de): undefined reference to `hb_font_funcs_set_glyph_h_kerning_func'
qharfbuzzng.cpp:(.text+0x12f5): undefined reference to `hb_font_funcs_set_glyph_v_kerning_func'
qharfbuzzng.cpp:(.text+0x130c): undefined reference to `hb_font_funcs_set_glyph_extents_func'
qharfbuzzng.cpp:(.text+0x1323): undefined reference to `hb_font_funcs_set_glyph_contour_point_func'
qharfbuzzng.cpp:(.text+0x133a): undefined reference to `hb_font_funcs_set_glyph_name_func'
qharfbuzzng.cpp:(.text+0x1351): undefined reference to `hb_font_funcs_set_glyph_from_name_func'
qharfbuzzng.cpp:(.text+0x138e): undefined reference to `hb_face_destroy'
qharfbuzzng.cpp:(.text+0x13d4): undefined reference to `hb_face_create_for_tables'
qharfbuzzng.cpp:(.text+0x13df): undefined reference to `hb_face_is_immutable'
qharfbuzzng.cpp:(.text+0x1425): undefined reference to `hb_face_set_index'
qharfbuzzng.cpp:(.text+0x1482): undefined reference to `hb_face_set_upem'
qharfbuzzng.cpp:(.text+0x14aa): undefined reference to `hb_font_destroy'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `_hb_qt_face_release(void*)':
qharfbuzzng.cpp:(.text+0x416): undefined reference to `hb_face_destroy'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `_hb_qt_font_release(void*)':
qharfbuzzng.cpp:(.text+0x4e6): undefined reference to `hb_font_destroy'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qharfbuzzng.o): In function `hb_qt_font_set_use_design_metrics(hb_font_t*, unsigned int)':
qharfbuzzng.cpp:(.text+0xe02): undefined reference to `hb_font_set_user_data'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qopenglfunctions.o): In function `QOpenGLFunctionsPrivate::QOpenGLFunctionsPrivate(QOpenGLContext*)':
qopenglfunctions.cpp:(.text+0x13e4): undefined reference to `glBindTexture'
qopenglfunctions.cpp:(.text+0x13ee): undefined reference to `glBlendFunc'
qopenglfunctions.cpp:(.text+0x13f9): undefined reference to `glClear'
qopenglfunctions.cpp:(.text+0x1404): undefined reference to `glClearColor'
qopenglfunctions.cpp:(.text+0x141a): undefined reference to `glClearStencil'
qopenglfunctions.cpp:(.text+0x1425): undefined reference to `glColorMask'
qopenglfunctions.cpp:(.text+0x1430): undefined reference to `glCopyTexImage2D'
qopenglfunctions.cpp:(.text+0x143b): undefined reference to `glCopyTexSubImage2D'
qopenglfunctions.cpp:(.text+0x1446): undefined reference to `glCullFace'
qopenglfunctions.cpp:(.text+0x1451): undefined reference to `glDeleteTextures'
qopenglfunctions.cpp:(.text+0x145c): undefined reference to `glDepthFunc'
qopenglfunctions.cpp:(.text+0x1467): undefined reference to `glDepthMask'
qopenglfunctions.cpp:(.text+0x147d): undefined reference to `glDisable'
qopenglfunctions.cpp:(.text+0x1488): undefined reference to `glDrawArrays'
qopenglfunctions.cpp:(.text+0x1493): undefined reference to `glDrawElements'
qopenglfunctions.cpp:(.text+0x14a1): undefined reference to `glEnable'
qopenglfunctions.cpp:(.text+0x14af): undefined reference to `glFinish'
qopenglfunctions.cpp:(.text+0x14bd): undefined reference to `glFlush'
qopenglfunctions.cpp:(.text+0x14cb): undefined reference to `glFrontFace'
qopenglfunctions.cpp:(.text+0x14d9): undefined reference to `glGenTextures'
qopenglfunctions.cpp:(.text+0x14e7): undefined reference to `glGetBooleanv'
qopenglfunctions.cpp:(.text+0x14f5): undefined reference to `glGetError'
qopenglfunctions.cpp:(.text+0x1503): undefined reference to `glGetFloatv'
qopenglfunctions.cpp:(.text+0x1511): undefined reference to `glGetIntegerv'
qopenglfunctions.cpp:(.text+0x151f): undefined reference to `glGetString'
qopenglfunctions.cpp:(.text+0x152d): undefined reference to `glGetTexParameterfv'
qopenglfunctions.cpp:(.text+0x153b): undefined reference to `glGetTexParameteriv'
qopenglfunctions.cpp:(.text+0x1549): undefined reference to `glHint'
qopenglfunctions.cpp:(.text+0x1557): undefined reference to `glIsEnabled'
qopenglfunctions.cpp:(.text+0x1565): undefined reference to `glIsTexture'
qopenglfunctions.cpp:(.text+0x1573): undefined reference to `glLineWidth'
qopenglfunctions.cpp:(.text+0x1581): undefined reference to `glPixelStorei'
qopenglfunctions.cpp:(.text+0x158f): undefined reference to `glPolygonOffset'
qopenglfunctions.cpp:(.text+0x159d): undefined reference to `glReadPixels'
qopenglfunctions.cpp:(.text+0x15ab): undefined reference to `glScissor'
qopenglfunctions.cpp:(.text+0x15b9): undefined reference to `glStencilFunc'
qopenglfunctions.cpp:(.text+0x15c7): undefined reference to `glStencilMask'
qopenglfunctions.cpp:(.text+0x15d5): undefined reference to `glStencilOp'
qopenglfunctions.cpp:(.text+0x15e3): undefined reference to `glTexImage2D'
qopenglfunctions.cpp:(.text+0x15f1): undefined reference to `glTexParameterf'
qopenglfunctions.cpp:(.text+0x15ff): undefined reference to `glTexParameterfv'
qopenglfunctions.cpp:(.text+0x160d): undefined reference to `glTexParameteri'
qopenglfunctions.cpp:(.text+0x161b): undefined reference to `glTexParameteriv'
qopenglfunctions.cpp:(.text+0x1629): undefined reference to `glTexSubImage2D'
qopenglfunctions.cpp:(.text+0x1637): undefined reference to `glViewport'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qopenglfunctions.o): In function `qopenglfTranslateDepthRangef(float, float)':
qopenglfunctions.cpp:(.text+0x49): undefined reference to `glDepthRange'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qopenglfunctions.o): In function `qopenglfTranslateClearDepthf(float)':
qopenglfunctions.cpp:(.text+0x55): undefined reference to `glClearDepth'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Gui.a(qopenglpaintengine.o): In function `QOpenGL2PaintEngineEx::beginNativePainting()':
qopenglpaintengine.cpp:(.text+0x1d00): undefined reference to `glMatrixMode'
qopenglpaintengine.cpp:(.text+0x1d05): undefined reference to `glLoadIdentity'
qopenglpaintengine.cpp:(.text+0x1d3e): undefined reference to `glOrtho'
qopenglpaintengine.cpp:(.text+0x1d48): undefined reference to `glMatrixMode'
qopenglpaintengine.cpp:(.text+0x1d50): undefined reference to `glLoadMatrixf'
/home/simon/projects/qt-5.6.1/lib/../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_57'
qlocale_icu.cpp:(.text+0x1d7): undefined reference to `u_strToUpper_57'
/home/simon/projects/qt-5.6.1/lib/../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_57'
qlocale_icu.cpp:(.text+0x417): undefined reference to `u_strToLower_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qcollator_icu.o): In function `QCollatorPrivate::init()':
qcollator_icu.cpp:(.text+0x17): undefined reference to `ucol_close_57'
qcollator_icu.cpp:(.text+0x93): undefined reference to `ucol_open_57'
qcollator_icu.cpp:(.text+0x169): undefined reference to `ucol_setAttribute_57'
qcollator_icu.cpp:(.text+0x18e): undefined reference to `ucol_setAttribute_57'
qcollator_icu.cpp:(.text+0x1fa): undefined reference to `ucol_setAttribute_57'
qcollator_icu.cpp:(.text+0x266): undefined reference to `ucol_setAttribute_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qcollator_icu.o): In function `QCollatorPrivate::cleanup()':
qcollator_icu.cpp:(.text+0x2ee): undefined reference to `ucol_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::compare(QChar const*, int, QChar const*, int) const':
qcollator_icu.cpp:(.text+0x32b): undefined reference to `ucol_strcoll_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::compare(QString const&, QString const&) const':
qcollator_icu.cpp:(.text+0x48b): undefined reference to `ucol_strcoll_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::compare(QStringRef const&, QStringRef const&) const':
qcollator_icu.cpp:(.text+0x62b): undefined reference to `ucol_strcoll_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qcollator_icu.o): In function `QCollator::sortKey(QString const&) const':
qcollator_icu.cpp:(.text+0x884): undefined reference to `ucol_getSortKey_57'
qcollator_icu.cpp:(.text+0x8e5): undefined reference to `ucol_getSortKey_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::~QIcuTimeZonePrivate()':
qtimezoneprivate_icu.cpp:(.text+0x23): undefined reference to `ucal_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::~QIcuTimeZonePrivate()':
qtimezoneprivate_icu.cpp:(.text+0x43): undefined reference to `ucal_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::isDaylightTime(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x84): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0xbb): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0xcb): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0xef): undefined reference to `ucal_inDaylightTime_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::hasDaylightTime() const':
qtimezoneprivate_icu.cpp:(.text+0x12a): undefined reference to `ucal_getDSTSavings_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::clone()':
qtimezoneprivate_icu.cpp:(.text+0x1a5): undefined reference to `ucal_clone_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::standardTimeOffset(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x220): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0x25d): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0x26d): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0x294): undefined reference to `ucal_get_57'
qtimezoneprivate_icu.cpp:(.text+0x2c7): undefined reference to `ucal_get_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::daylightTimeOffset(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x2f0): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0x32b): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0x341): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0x36c): undefined reference to `ucal_get_57'
qtimezoneprivate_icu.cpp:(.text+0x38c): undefined reference to `ucal_get_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::offsetFromUtc(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x3d4): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0x410): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0x420): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0x452): undefined reference to `ucal_get_57'
qtimezoneprivate_icu.cpp:(.text+0x484): undefined reference to `ucal_get_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `ucalTimeZoneDisplayName(void**, QTimeZone::TimeType, QTimeZone::NameType, QString const&)':
qtimezoneprivate_icu.cpp:(.text+0x554): undefined reference to `ucal_getTimeZoneDisplayName_57'
qtimezoneprivate_icu.cpp:(.text+0x6a4): undefined reference to `ucal_getTimeZoneDisplayName_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::abbreviation(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x7ea): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0x8db): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0x8eb): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0x907): undefined reference to `ucal_inDaylightTime_57'
qtimezoneprivate_icu.cpp:(.text+0x911): undefined reference to `ucal_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::data(long long) const':
qtimezoneprivate_icu.cpp:(.text+0x9df): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0xa78): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0xa8f): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0xac9): undefined reference to `ucal_get_57'
qtimezoneprivate_icu.cpp:(.text+0xafd): undefined reference to `ucal_get_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::displayName(QTimeZone::TimeType, QTimeZone::NameType, QLocale const&) const':
qtimezoneprivate_icu.cpp:(.text+0xc20): undefined reference to `ucal_clone_57'
qtimezoneprivate_icu.cpp:(.text+0xceb): undefined reference to `ucal_getDSTSavings_57'
qtimezoneprivate_icu.cpp:(.text+0xd2a): undefined reference to `ucal_setMillis_57'
qtimezoneprivate_icu.cpp:(.text+0xd4b): undefined reference to `ucal_close_57'
qtimezoneprivate_icu.cpp:(.text+0xda0): undefined reference to `ucal_get_57'
qtimezoneprivate_icu.cpp:(.text+0xddb): undefined reference to `ucal_get_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::systemTimeZoneId() const':
qtimezoneprivate_icu.cpp:(.text+0xea3): undefined reference to `ucal_getDefaultTimeZone_57'
qtimezoneprivate_icu.cpp:(.text+0xf72): undefined reference to `ucal_getDefaultTimeZone_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::QIcuTimeZonePrivate(QIcuTimeZonePrivate const&)':
qtimezoneprivate_icu.cpp:(.text+0x1005): undefined reference to `ucal_clone_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::init(QByteArray const&)':
qtimezoneprivate_icu.cpp:(.text+0x10e7): undefined reference to `ucal_open_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::QIcuTimeZonePrivate()':
qtimezoneprivate_icu.cpp:(.text+0x12ea): undefined reference to `ucal_getDefaultTimeZone_57'
qtimezoneprivate_icu.cpp:(.text+0x13f2): undefined reference to `ucal_getDefaultTimeZone_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `uenumToIdList(UEnumeration*)':
qtimezoneprivate_icu.cpp:(.text+0x18f4): undefined reference to `uenum_next_57'
qtimezoneprivate_icu.cpp:(.text+0x1da3): undefined reference to `uenum_next_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::availableTimeZoneIds() const':
qtimezoneprivate_icu.cpp:(.text+0x1edb): undefined reference to `ucal_openTimeZones_57'
qtimezoneprivate_icu.cpp:(.text+0x1ef8): undefined reference to `uenum_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::availableTimeZoneIds(QLocale::Country) const':
qtimezoneprivate_icu.cpp:(.text+0x1fc1): undefined reference to `ucal_openCountryTimeZones_57'
qtimezoneprivate_icu.cpp:(.text+0x1fde): undefined reference to `uenum_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::availableTimeZoneIds(int) const':
qtimezoneprivate_icu.cpp:(.text+0x20e8): undefined reference to `ucal_openTimeZoneIDEnumeration_57'
qtimezoneprivate_icu.cpp:(.text+0x2105): undefined reference to `uenum_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qtimezoneprivate_icu.o): In function `QIcuTimeZonePrivate::QIcuTimeZonePrivate(QByteArray const&)':
qtimezoneprivate_icu.cpp:(.text+0x21a7): undefined reference to `ucal_openTimeZones_57'
qtimezoneprivate_icu.cpp:(.text+0x21c6): undefined reference to `uenum_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `pcre16SafeExec(real_pcre16 const*, pcre16_extra const*, unsigned short const*, int, int, int, int*, int)':
qregularexpression.cpp:(.text+0x223): undefined reference to `pcre16_exec'
qregularexpression.cpp:(.text+0x28f): undefined reference to `pcre16_jit_stack_alloc'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::~QRegularExpressionPrivate()':
qregularexpression.cpp:(.text+0x493): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x4a6): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::cleanCompiledPattern()':
qregularexpression.cpp:(.text+0x5a3): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x5b6): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::getPatternInfo()':
qregularexpression.cpp:(.text+0x609): undefined reference to `pcre16_fullinfo'
qregularexpression.cpp:(.text+0x61b): undefined reference to `pcre16_fullinfo'
qregularexpression.cpp:(.text+0x669): undefined reference to `pcre16_fullinfo'
qregularexpression.cpp:(.text+0x763): undefined reference to `pcre16_config'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::compilePattern()':
qregularexpression.cpp:(.text+0x8e3): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x8f6): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x997): undefined reference to `pcre16_compile2'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::optimizePattern(QRegularExpressionPrivate::OptimizePatternOption)':
qregularexpression.cpp:(.text+0xa62): undefined reference to `pcre16_study'
qregularexpression.cpp:(.text+0xb7d): undefined reference to `pcre16_assign_jit_stack'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionPrivate::captureIndexForName(QString const&) const':
qregularexpression.cpp:(.text+0xbfb): undefined reference to `pcre16_get_stringnumber'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::~QRegularExpression()':
qregularexpression.cpp:(.text+0xe37): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0xe46): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::operator=(QRegularExpression const&)':
qregularexpression.cpp:(.text+0xf29): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0xf38): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::setPattern(QString const&)':
qregularexpression.cpp:(.text+0x10cc): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x10dd): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::setPatternOptions(QFlags<QRegularExpression::PatternOption>)':
qregularexpression.cpp:(.text+0x1288): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x1299): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::captureCount() const':
qregularexpression.cpp:(.text+0x13db): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x13ee): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x1496): undefined reference to `pcre16_compile2'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::isValid() const':
qregularexpression.cpp:(.text+0x1563): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x1576): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x161e): undefined reference to `pcre16_compile2'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::errorString() const':
qregularexpression.cpp:(.text+0x1703): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x1716): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x17c4): undefined reference to `pcre16_compile2'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::patternErrorOffset() const':
qregularexpression.cpp:(.text+0x1893): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x18a6): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x194e): undefined reference to `pcre16_compile2'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::optimize() const':
qregularexpression.cpp:(.text+0x1a3b): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x1a4e): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x1af6): undefined reference to `pcre16_compile2'
qregularexpression.cpp:(.text+0x1b4f): undefined reference to `pcre16_study'
qregularexpression.cpp:(.text+0x1c61): undefined reference to `pcre16_assign_jit_stack'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::~QRegularExpressionMatch()':
qregularexpression.cpp:(.text+0x2010): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x201f): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::operator=(QRegularExpressionMatch const&)':
qregularexpression.cpp:(.text+0x21e4): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x21f5): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::captured(QString const&) const':
qregularexpression.cpp:(.text+0x2448): undefined reference to `pcre16_get_stringnumber'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedRef(QString const&) const':
qregularexpression.cpp:(.text+0x2548): undefined reference to `pcre16_get_stringnumber'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedStart(QString const&) const':
qregularexpression.cpp:(.text+0x2701): undefined reference to `pcre16_get_stringnumber'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedLength(QString const&) const':
qregularexpression.cpp:(.text+0x27c5): undefined reference to `pcre16_get_stringnumber'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::capturedEnd(QString const&) const':
qregularexpression.cpp:(.text+0x28a1): undefined reference to `pcre16_get_stringnumber'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::~QRegularExpressionMatchIterator()':
qregularexpression.cpp:(.text+0x29d5): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x29e4): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x2af2): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x2b03): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::operator=(QRegularExpressionMatchIterator const&)':
qregularexpression.cpp:(.text+0x2cbd): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x2cce): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x2dec): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x2dfb): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `operator>>(QDataStream&, QRegularExpression&)':
qregularexpression.cpp:(.text+0x31b5): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x31c4): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x3306): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x3317): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../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+0x49b5): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x49c4): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::match(QString const&, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const':
qregularexpression.cpp:(.text+0x4f5c): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x4f6f): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x5018): undefined reference to `pcre16_compile2'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::globalMatch(QString const&, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const':
qregularexpression.cpp:(.text+0x52ba): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x52c9): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::globalMatch(QStringRef const&, int, QRegularExpression::MatchType, QFlags<QRegularExpression::MatchOption>) const':
qregularexpression.cpp:(.text+0x554d): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x555c): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpression::namedCaptureGroups() const':
qregularexpression.cpp:(.text+0x56ec): undefined reference to `pcre16_fullinfo'
qregularexpression.cpp:(.text+0x5705): undefined reference to `pcre16_fullinfo'
qregularexpression.cpp:(.text+0x571e): undefined reference to `pcre16_fullinfo'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatch::QRegularExpressionMatch()':
qregularexpression.cpp:(.text+0x5dd4): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x5de3): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::QRegularExpressionMatchIterator()':
qregularexpression.cpp:(.text+0x600d): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x601c): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x610c): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x611b): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QRegularExpressionMatchIterator::next()':
qregularexpression.cpp:(.text+0x6414): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x6425): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text+0x65db): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text+0x65ec): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `pcre16SafeExec(real_pcre16 const*, pcre16_extra const*, unsigned short const*, int, int, int, int*, int)':
qregularexpression.cpp:(.text+0x2ef): undefined reference to `pcre16_exec'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QThreadStorage<QPcreJitStackPointer*>::deleteData(void*)':
qregularexpression.cpp:(.text._ZN14QThreadStorageIP20QPcreJitStackPointerE10deleteDataEPv[_ZN14QThreadStorageIP20QPcreJitStackPointerE10deleteDataEPv]+0x12): undefined reference to `pcre16_jit_stack_free'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QExplicitlySharedDataPointer<QRegularExpressionPrivate>::~QExplicitlySharedDataPointer()':
qregularexpression.cpp:(.text._ZN28QExplicitlySharedDataPointerI25QRegularExpressionPrivateED2Ev[_ZN28QExplicitlySharedDataPointerI25QRegularExpressionPrivateED5Ev]+0x37): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text._ZN28QExplicitlySharedDataPointerI25QRegularExpressionPrivateED2Ev[_ZN28QExplicitlySharedDataPointerI25QRegularExpressionPrivateED5Ev]+0x46): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QSharedDataPointer<QRegularExpressionMatchPrivate>::~QSharedDataPointer()':
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateED2Ev[_ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateED5Ev]+0xa0): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateED2Ev[_ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateED5Ev]+0xaf): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QSharedDataPointer<QRegularExpressionMatchPrivate>::detach_helper()':
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateE13detach_helperEv[_ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateE13detach_helperEv]+0x138): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateE13detach_helperEv[_ZN18QSharedDataPointerI30QRegularExpressionMatchPrivateE13detach_helperEv]+0x147): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qregularexpression.o): In function `QSharedDataPointer<QRegularExpressionMatchIteratorPrivate>::detach_helper()':
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv[_ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv]+0xb0): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv[_ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv]+0xbf): undefined reference to `pcre16_free_study'
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv[_ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv]+0x1d3): undefined reference to `pcre16_free'
qregularexpression.cpp:(.text._ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv[_ZN18QSharedDataPointerI38QRegularExpressionMatchIteratorPrivateE13detach_helperEv]+0x1e2): undefined reference to `pcre16_free_study'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qlibrary_unix.o): In function `qdlerror()':
qlibrary_unix.cpp:(.text+0xc): undefined reference to `dlerror'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qlibrary_unix.o): In function `QLibraryPrivate::unload_sys()':
qlibrary_unix.cpp:(.text+0x103): undefined reference to `dlclose'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qlibrary_unix.o): In function `QLibraryPrivate::resolve_sys(char const*)':
qlibrary_unix.cpp:(.text+0x328): undefined reference to `dlsym'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qlibrary_unix.o): In function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text+0x103a): undefined reference to `dlopen'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qlibrary_unix.o): In function `qt_linux_find_symbol_sys(char const*)':
qlibrary_unix.cpp:(.text+0x306): undefined reference to `dlsym'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::mibEnum() const':
qicucodec.cpp:(.text+0x4c): undefined reference to `ucnv_compareNames_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `qTextCodecNameMatch(char const*, char const*)':
qicucodec.cpp:(.text+0xf5): undefined reference to `ucnv_compareNames_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::getConverter(QTextCodec::ConverterState*) const':
qicucodec.cpp:(.text+0x196): undefined reference to `ucnv_open_57'
qicucodec.cpp:(.text+0x1b0): undefined reference to `ucnv_setSubstChars_57'
qicucodec.cpp:(.text+0x1c7): undefined reference to `u_errorName_57'
qicucodec.cpp:(.text+0x34b): undefined reference to `ucnv_open_57'
qicucodec.cpp:(.text+0x376): undefined reference to `ucnv_setSubstChars_57'
qicucodec.cpp:(.text+0x391): undefined reference to `u_errorName_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::convertFromUnicode(QChar const*, int, QTextCodec::ConverterState*) const':
qicucodec.cpp:(.text+0x6a1): undefined reference to `ucnv_getMaxCharSize_57'
qicucodec.cpp:(.text+0x83e): undefined reference to `ucnv_fromUnicode_57'
qicucodec.cpp:(.text+0x853): undefined reference to `u_errorName_57'
qicucodec.cpp:(.text+0x9be): undefined reference to `ucnv_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::convertToUnicode(char const*, int, QTextCodec::ConverterState*) const':
qicucodec.cpp:(.text+0xad2): undefined reference to `ucnv_toUnicode_57'
qicucodec.cpp:(.text+0xb91): undefined reference to `u_errorName_57'
qicucodec.cpp:(.text+0xd10): undefined reference to `ucnv_close_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::codecForNameUnlocked(char const*)':
qicucodec.cpp:(.text+0x105d): undefined reference to `ucnv_getStandardName_57'
qicucodec.cpp:(.text+0x10b8): undefined reference to `ucnv_getStandardName_57'
qicucodec.cpp:(.text+0x11c8): undefined reference to `ucnv_compareNames_57'
qicucodec.cpp:(.text+0x1248): undefined reference to `ucnv_compareNames_57'
qicucodec.cpp:(.text+0x1b58): undefined reference to `ucnv_open_57'
qicucodec.cpp:(.text+0x1b69): undefined reference to `ucnv_close_57'
qicucodec.cpp:(.text+0x1c0a): undefined reference to `u_errorName_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::defaultCodecUnlocked()':
qicucodec.cpp:(.text+0x1d51): undefined reference to `ucnv_getDefaultName_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::availableCodecs()':
qicucodec.cpp:(.text+0x1e0e): undefined reference to `ucnv_countAvailable_57'
qicucodec.cpp:(.text+0x1e47): undefined reference to `ucnv_countAliases_57'
qicucodec.cpp:(.text+0x1e66): undefined reference to `ucnv_getAvailableName_57'
qicucodec.cpp:(.text+0x1e86): undefined reference to `ucnv_getStandardName_57'
qicucodec.cpp:(.text+0x1eb0): undefined reference to `ucnv_getStandardName_57'
qicucodec.cpp:(.text+0x1f5d): undefined reference to `ucnv_getAlias_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `QIcuCodec::aliases() const':
qicucodec.cpp:(.text+0x203e): undefined reference to `ucnv_countAliases_57'
qicucodec.cpp:(.text+0x2093): undefined reference to `ucnv_getAlias_57'
/home/simon/projects/qt-5.6.1/lib/../lib/libQt5Core.a(qicucodec.o): In function `qIcuCodecStateFree(QTextCodec::ConverterState*)':
qicucodec.cpp:(.text+0xa5): undefined reference to `ucnv_close_57'
collect2: error: ld returned 1 exit status
Any clues?
from qml.
You need to add missing libs to LDFLAGS, -lqtharfbuzzng -lqtpcre -licuuc , probably more. It will be either -lpcre or -lqtpcre, depends how you built Qt, with system libs or with bundled libs.
You can modify pkgconfig files that Qt installed, what you need will probably be in Libs.private: , since this will not be fully static build you need to move some libs from Libs.private to Libs.
I never did a full static build on Linux because of libGL but on Windows/mingw you can link to static -lopengl32 .
from qml.
The problem is that when I do that, I manage to compile but I get this error at runtime:
simon@kurisu ~/g/s/g/P/D/frontend (master)> go build --ldflags '-extldflags "-L/home/simon/projects/qt-5.6.1/lib -l qtpcre -l poly2tri -lxcb-static -l qtharfbuzzng -l GL -l icuuc -l icuio -l icui18n -Wl,--no-as-needed -ldl"'
simon@kurisu ~/g/s/g/P/D/frontend (master)> env QT_DEBUG_PLUGINS=1 ./frontend
2016/06/13 19:49:18 .:0: QFactoryLoader::QFactoryLoader() ignoring "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3" since plugins are disabled in static builds
2016/06/13 19:49:18 .:0: This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".
Reinstalling the application may fix this problem.
SIGABRT: abort
PC=0x7f85aa7fc295 m=0
signal arrived during cgo execution
goroutine 1 [syscall, locked to thread]:
runtime.cgocall(0x7d9df0, 0xc82004be10, 0x0)
/usr/lib/go/src/runtime/cgocall.go:123 +0x11b fp=0xc82004bde8 sp=0xc82004bdb8
gopkg.in/qml%2ev1._Cfunc_newGuiApplication()
??:0 +0x36 fp=0xc82004be10 sp=0xc82004bde8
gopkg.in/qml%2ev1.Run(0xc82000b240, 0x0, 0x0)
/home/simon/go/src/gopkg.in/qml.v1/bridge.go:55 +0x10f fp=0xc82004be68 sp=0xc82004be10
main.main()
/home/simon/go/src/github.com/ProtonMail/Desktop-Import/frontend/main.go:52 +0x2d3 fp=0xc82004bf50 sp=0xc82004be68
runtime.main()
/usr/lib/go/src/runtime/proc.go:188 +0x2b0 fp=0xc82004bfa0 sp=0xc82004bf50
runtime.goexit()
/usr/lib/go/src/runtime/asm_amd64.s:1998 +0x1 fp=0xc82004bfa8 sp=0xc82004bfa0
goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/usr/lib/go/src/runtime/asm_amd64.s:1998 +0x1
rax 0x0
rbx 0x7ffc69a64030
rcx 0x7f85aa7fc295
rdx 0x6
rdi 0x359b
rsi 0x359b
rbp 0x407b270
rsp 0x7ffc69a63cd8
r8 0x211f1e0
r9 0x8
r10 0x8
r11 0x202
r12 0x7ffc69a63ff0
r13 0x18
r14 0x7ffc69a64040
r15 0x7ffc69a64000
rip 0x7f85aa7fc295
rflags 0x202
cs 0x33
fs 0x0
gs 0x0
simon@kurisu ~/g/s/g/P/D/frontend (master) [2]> ldd frontend
linux-vdso.so.1 (0x00007fffa295d000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f7006012000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f7005df5000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f7005bf1000)
libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f7005980000)
libicuuc.so.57 => /usr/lib/libicuuc.so.57 (0x00007f70055d8000)
libicuio.so.57 => /usr/lib/libicuio.so.57 (0x00007f70053ca000)
libicui18n.so.57 => /usr/lib/libicui18n.so.57 (0x00007f7004f50000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007f7004c4c000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f7004a36000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f7004695000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7006399000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007f7004469000)
libxcb-dri3.so.0 => /usr/lib/libxcb-dri3.so.0 (0x00007f7004266000)
libxcb-present.so.0 => /usr/lib/libxcb-present.so.0 (0x00007f7004063000)
libxcb-randr.so.0 => /usr/lib/libxcb-randr.so.0 (0x00007f7003e53000)
libxcb-xfixes.so.0 => /usr/lib/libxcb-xfixes.so.0 (0x00007f7003c4b000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x00007f7003a3d000)
libxcb-shape.so.0 => /usr/lib/libxcb-shape.so.0 (0x00007f7003839000)
libxcb-sync.so.1 => /usr/lib/libxcb-sync.so.1 (0x00007f7003632000)
libxshmfence.so.1 => /usr/lib/libxshmfence.so.1 (0x00007f700342f000)
libglapi.so.0 => /usr/lib/libglapi.so.0 (0x00007f7003201000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f7002fef000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00007f7002dec000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007f7002be6000)
libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007f70029e4000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f70026a2000)
libxcb-glx.so.0 => /usr/lib/libxcb-glx.so.0 (0x00007f7002486000)
libxcb-dri2.so.0 => /usr/lib/libxcb-dri2.so.0 (0x00007f7002281000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f7002058000)
libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x00007f7001e52000)
libdrm.so.2 => /usr/lib/libdrm.so.2 (0x00007f7001c43000)
libicudata.so.57 => /usr/lib/libicudata.so.57 (0x00007f70001c7000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f6ffffc3000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f6fffdbd000)
from qml.
Ok, you need to modify cpp/modules.cpp, I am not sure now what I added there, here is the whole file:
#include <QtCore/QtPlugin>
#ifndef _WIN32
Q_IMPORT_PLUGIN(QXcbIntegrationPlugin)
Q_IMPORT_PLUGIN(QXcbGlxIntegrationPlugin)
Q_IMPORT_PLUGIN(QEvdevKeyboardPlugin)
Q_IMPORT_PLUGIN(QEvdevMousePlugin)
#else
Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)
Q_IMPORT_PLUGIN(QtQuick2DialogsPrivatePlugin)
Q_IMPORT_PLUGIN(QmlFolderListModelPlugin)
#endif
Q_IMPORT_PLUGIN(QtQuick2Plugin)
Q_IMPORT_PLUGIN(QtQuickControlsPlugin)
Q_IMPORT_PLUGIN(QtQuick2DialogsPlugin)
Q_IMPORT_PLUGIN(QtQuickLayoutsPlugin)
Q_IMPORT_PLUGIN(QtQuick2WindowPlugin)
Q_IMPORT_PLUGIN(QmlSettingsPlugin)
Q_IMPORT_PLUGIN(QtQuick2PrivateWidgetsPlugin)
And to link them check what I did here https://github.com/gen2brain/cbconvert/blob/master/gui/make.bash#L15
from qml.
Related Issues (20)
- Can we use QT5 with Microsoft VS2015 Community?
- Something wrong with WebView HOT 3
- Install on Mac without Homebrew
- cgo result has Go pointer
- go-qml is broken under Go 1.7 HOT 21
- Error Build a sample HOT 3
- How Build and Install QT on Go 1.8?
- Error Build
- Tray icon/menu support
- types foe model QML
- Error! HOT 1
- Error while building/testing on windows HOT 1
- How do I register a singleton qml file/component
- Qt 5.11 Support HOT 6
- Broken under Go 1.12 (relocation target runtime.acquirem not defined for ABI0 (but is defined for ABIInternal)) HOT 5
- build go-qml failure HOT 1
- How to connect Material?
- on Mac QT 5.13.0 + Go 1.12.7 installing error when did 'go get gopkg.in/qml.v1' HOT 1
- Installation on Ubuntu 19.10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from qml.