[Interest] segmentation fault at graphics_system_name.isEmpty()

manju goudar csmanjuvijay at gmail.com
Thu Jul 23 11:02:03 CEST 2015

Hi all,

My Target is SPARC little-endian and Linux 3.4.

I have ported Qt 4.8.6 to sparc linux.as per my knowledge Sparc and Linux
support is not available in qws folder.
I have copied linux-generic-g++ to linux-sparc-g++ and changed qmake.conf
as per my toolchain functionality as shown below.

#include (../../common/gcc-base-.conf)

#Compiler Flags to take advantage of the sparc architecture
QMAKE_CFLAGS_RELEASE = -nostdlib -nostartfiles -shared
QMAKE_CXXFLAGS_RELEASE = -nostdlib -nostartfiles -shared
QMAKE_LFLAGS_RELEASE = -nostdlib -nostartfiles -shared

QMAKE_CC = sparc-elf-gcc
QMAKE_CXX = sparc-elf-g++
QMAKE_LINK = sparc-elf-g++
QMAKE_LINK_SHLIB = sparc-elf-g++

QMAKE_AR = sparc-elf-ar cqs
QMAKE_OBJCOPY = sparc-elf-objcopy
QMAKE_STRIP = sparc-elf-strip


After this I have configured with below configuration feature

./configure -verbose -opensource -confirm-license -no-qt3support -no-glib
-depths 32 -qt-gfx-vnc -no-gfx-qvfb -no-gfx-multiscreen -no-gfx-directfb
-debug -shared -embedded sparc -platform qws/linux-x86_64-g++ -xplatform
qws/linux-sparc-g++ -host-little-endian -little-endian -no-openssl
-no-opengl -no-sql-sqlite -no-xmlpatterns -no-multimedia -no-audio-backend
-no-phonon -no-script -no-phonon-backend -no-svg -multimedia -no-webkit
-nomake demos -no-separate-debug-info -prefix /usr/local/ -plugindir
/usr/local/plugins -importdir /usr/local/imports -translationdir
/usr/local/translations -no-rpath

I have successfully crated all shared library and copied into my board
/lib/ path

Now my plan is to run analogclock example on board using below command(I
don't have display that's what I am using VNC display)
./analogclock -qws -display VNC:0

analogclock[120]: segfault at 8 ip 5019b06c (rpc f000eff0) sp ef82cae8
error 30001 in libQtGui.so.4.8.6[50017000+10cb000]
Segmentation fault

I am getting segmentation fault when graphics_system_name.isEmpty(); in
src/gui/kernel/qapplication.cpp file is invoked.

After debugging I found that global "QString
QApplicationPrivate::graphics_system_name;" object is created successfully
with valid address 0x5143a400.
However I could not access any QString member functions such as
(graphics_system_name.data(), graphics_system_name.size().....)

if I create local QString class object,it is working fine.if global
segmentation fault.

Please help me....

Manjunath Goudar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20150723/2e79fbd5/attachment.html>

More information about the Interest mailing list