Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Segmentation fault after static compilation
Forum Update on Monday, May 27th 2025

Segmentation fault after static compilation

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
1 Posts 1 Posters 751 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Magnus21
    wrote on 16 Mar 2017, 16:25 last edited by Magnus21
    #1

    Hey there, my problem is a bit more complex, I think, but maybe someone can help me anyways. My program crashes with a segmentation fault on startup, when I compiled it statically even though it does not crash when I compile it dynamically. Is there anything I need to do extra when compiling statically?
    Here are the things I did to compile Qt statically:

    git clone git://code.qt.io/qt/qt5.git
    cd qt5
    git checkout v5.8.0
    ./init-repository --module-subset=default,-qtwebkit,-qtwebkit-examples,-qtwebengine
    ./configure -static -developer-build -opensource -nomake examples -nomake tests -confirm-license
    make -j4
    

    And I compiled my program using qmake -config release && make after adding the static Qt build to the PATH variable.
    The qmake returned the following warnings:

    Project WARNING: Plugin class name could not be determined for qwayland-egl plugin.
    Project WARNING: Plugin class name could not be determined for qwayland-generic plugin.
    Project WARNING: Plugin class name could not be determined for qwayland-xcomposite-egl plugin.
    Project WARNING: Plugin class name could not be determined for qwayland-xcomposite-glx plugin.
    

    The program compiles successfully and readelf -d QuickCurver| grep -Eo 'Shared.*'| sed 's/Shared library: \[//g'| sed 's/\]//g' confirms that it is linked statically (but why does it have Wayland dependencies? I run X11):

    libwayland-egl.so.1
    libXcomposite.so.1
    libwayland-client.so.0
    libwayland-cursor.so.0
    libxcb-xinerama.so.0
    libXrender.so.1
    libxcb-xkb.so.1
    libxcb-sync.so.1
    libxcb-xfixes.so.0
    libxcb-randr.so.0
    libxcb-image.so.0
    libxcb-shm.so.0
    libxcb-keysyms.so.1
    libxcb-icccm.so.4
    libxcb-shape.so.0
    libxcb-glx.so.0
    libXi.so.6
    libSM.so.6
    libICE.so.6
    libxcb-render-util.so.0
    libxcb-render.so.0
    libxkbcommon-x11.so.0
    libjasper.so.4
    libjpeg.so.8
    libmng.so.2
    libtiff.so.5
    libwebp.so.6
    libwebpdemux.so.2
    libgbm.so.1
    libdrm.so.2
    libXext.so.6
    libmtdev.so.1
    libinput.so.10
    libxkbcommon.so.0
    libudev.so.1
    libxcb.so.1
    libX11.so.6
    libX11-xcb.so.1
    libfontconfig.so.1
    libfreetype.so.6
    libts.so.0
    libEGL.so.1
    libpng16.so.16
    libharfbuzz.so.0
    libdbus-1.so.3
    libicui18n.so.58
    libicuuc.so.58
    libicudata.so.58
    libdl.so.2
    librt.so.1
    libz.so.1
    libpcre16.so.0
    libgthread-2.0.so.0
    libglib-2.0.so.0
    libGL.so.1
    libpthread.so.0
    libstdc++.so.6
    libm.so.6
    libgcc_s.so.1
    libc.so.6
    ld-linux-x86-64.so.2
    

    Now when I start it with ./Quickcurver, it immediately crashes, even though it did not when it was linked dynamically...
    stracing the system calls shows that the last system calls before the crash were the following:

    futex(0x7fafeebcb048, FUTEX_WAKE_PRIVATE, 2147483647) = 0
    getpid()                                = 11128
    # the same getpid() call repeats several times after that
    open("/dev/urandom", O_RDONLY|O_CLOEXEC) = 3
    fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
    read(3, "\203\327\236\256", 4)          = 4
    close(3)                                = 0
    --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x10} ---
    +++ killed by SIGSEGV (core dumped) +++
    [1]    11126 segmentation fault (core dumped)  strace ./QuickCurver
    

    I don't know what the chances are that someone can help me here, but I would really appreciate it if someone would. The full source code is available here: https://github.com/magnus-gross/quickcurver

    Edit: It would even help, if someone could tell me what else I can do other than using strace to further analyze the problem.

    1 Reply Last reply
    0

    1/1

    16 Mar 2017, 16:25

    • Login

    • Login or register to search.
    1 out of 1
    • First post
      1/1
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Get Qt Extensions
    • Unsolved