Qt-embedded-interest Archive, February 2007
Qwt SEGMENTATION FAULT with qt-embedded-2.3.10
Message 1 in thread
Hi!
I am working with qt-embedded-2.3.10 and qwt-0.4.1 (this is the version
that is compatible with my qt version, newer qwt version doesn't compile
with qt-embedded-2.3.10).
Everything it's ok when I compile, but when I will run on my ARM platform
appear the SEGMENTATION FAULT error. This error appear only when I use the
qwt lib.
Trying to debug with gdbserver, appear the message:
*warning*: Remote failure reply: *E01*
0x0000000 ?? ()
I am using arm-linux-gcc 3.4.
Somebody can help me? Thank you very much!
This is my Makefile:
#############################################################################
# Automatically generated from /home/kurumin/Desktop/cirrus-arm-linux-2.0.8
/qt-2.3.10/./examples/themes/Makefile.in
# Build options from
#############################################################################
QT_CXXFLAGS_OPT = -DQT_NO_QWS_SNAP -DQT_NO_QWS_VOODOO3 -DQT_NO_QWS_MACH64
-DQT_NO_QWS_MATROX -DQT_NO_QWS_VNC -DQT_NO_QWS_VGA_16 -DQT_NO_QWS_DEPTH_4
-DQT_NO_QWS_DEPTH_8 -DQT_NO_QWS_DEPTH_24 -DQT_NO_QWS_VFB
-DQT_BUILTIN_GIF_READER=1 -DQT_NO_IMAGEIO_JPEG -DQT_NO_IMAGEIO_MNG
-DQT_NO_SM_SUPPORT -DQT_NO_XKB -I$(QTDIR)/src/3rdparty/zlib
-I$(QTDIR)/src/3rdparty/libpng -I3rdparty/freetype/src
-I3rdparty/freetype/include -I3rdparty/freetype/builds/unix
QT_CFLAGS_OPT = -I$(QTDIR)/src/3rdparty/zlib
-I$(QTDIR)/src/3rdparty/libpng -I3rdparty/freetype/src
-I3rdparty/freetype/include -I3rdparty/freetype/builds/unix
QT_LIBS_OPT = -lm
QT_MODULE_OBJ = $(PNG_OBJECTS) $(ZLIB_OBJECTS) $(FT_OBJECTS) \
$(OBJECTS_tools) \
$(OBJECTS_kernel) \
$(OBJECTS_widgets) \
$(OBJECTS_dialogs) \
$(OBJECTS_iconview) \
$(OBJECTS_workspace) \
$(OBJECTS_network) \
$(OBJECTS_canvas) \
$(OBJECTS_table) \
$(OBJECTS_xml)
# Compiling
INTERFACE_DECL_PATH = .
SYSCONF_CXX = arm-linux-g++
LINK = arm-linux-g++
SYSCONF_CC = arm-linux-gcc
DASHCROSS = -arm
# Compiling with support libraries
SYSCONF_CXXFLAGS_X11 =
SYSCONF_CXXFLAGS_QT = -I$(QTDIR)/include -I/home/kurumin/qwt-0.4.1/include
SYSCONF_CXXFLAGS_QTOPIA = -I$(QPEDIR)/include
SYSCONF_CXXFLAGS_OPENGL = -I/usr/X11R6/include
# Compiling YACC output
SYSCONF_CXXFLAGS_YACC = -Wno-unused -Wno-parentheses
# Linking with support libraries
SYSCONF_RPATH_X11 =
SYSCONF_RPATH_QT = -Wl,-rpath,$(QTDIR)/lib
LFLAGS = -shared -Wl,-soname,libqwt.so.0
SYSCONF_RPATH_QTOPIA = -Wl,-rpath,$(QPEDIR)/lib
SYSCONF_RPATH_OPENGL = -Wl,-rpath,/usr/X11R6/lib
# Linking with support libraries
# X11
SYSCONF_LFLAGS_X11 =
SYSCONF_LIBS_X11 =
# Qt, Qt+OpenGL
SYSCONF_LFLAGS_QT = -L$(QTDIR)/lib
SYSCONF_LFLAGS_QTOPIA = -L$(QPEDIR)/lib
SYSCONF_LIBS_QT = -lqte$(QT_THREAD_SUFFIX)
SYSCONF_LIBS_QT_OPENGL =
SYSCONF_LIBS_QTOPIA = -lqtopia
# OpenGL
SYSCONF_LFLAGS_OPENGL = -L/usr/X11R6/lib
SYSCONF_LIBS_OPENGL =
# Yacc
SYSCONF_LIBS_YACC =
# Linking applications
SYSCONF_LINK = arm-linux-gcc
SYSCONF_LFLAGS =
SYSCONF_LIBS = -lm
# Link flags for shared objects
SYSCONF_LFLAGS_SHOBJ = -shared
# Flags for threading
SYSCONF_CFLAGS_THREAD = -D_REENTRANT
SYSCONF_CXXFLAGS_THREAD = -D_REENTRANT
SYSCONF_LFLAGS_THREAD =
SYSCONF_LIBS_THREAD = -lpthread
# Meta-object compiler
SYSCONF_MOC = $(QTDIR)/bin/moc
# UI compiler
SYSCONF_UIC = $(QTDIR)/bin/uic
# Linking shared libraries
# - Build the $(TARGET) library, eg. lib$(TARGET).so.2.2.2
# - Place target in $(DESTDIR) - which has a trailing /
# - Usually needs to incorporate $(VER_MAJ), $(VER_MIN) and $(VER_PATCH)
#
#SYSCONF_LINK_SHLIB = arm-linux-gcc
#SYSCONF_LINK_TARGET_SHARED =
lib$(TARGET).so.$(VER_MAJ).$(VER_MIN).$(VER_PATCH)
#SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) -shared
-Wl,-soname,lib$(TARGET).so.$(VER_MAJ) \
# $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \
# $(OBJECTS) $(OBJMOC) $(LIBS) && \
# mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \
# cd $(DESTDIR) && \
# rm -f lib$(TARGET).so lib$(TARGET).so.$(VER_MAJ)
lib$(TARGET).so.$(VER_MAJ).$(VER_MIN); \
# ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so; \
# ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so.$(VER_MAJ); \
# ln -s $(SYSCONF_LINK_TARGET_SHARED)
lib$(TARGET).so.$(VER_MAJ).$(VER_MIN)
# Linking static libraries
# - Build the $(TARGET) library, eg. lib$(TARGET).a
# - Place target in $(DESTDIR) - which has a trailing /
#
SYSCONF_AR = arm-linux-ar cqs
SYSCONF_LINK_TARGET_STATIC = lib$(TARGET).a
SYSCONF_LINK_LIB_STATIC = rm -f $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) ; \
$(SYSCONF_AR) $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS)
$(OBJMOC)
# Compiling application source
SYSCONF_CXXFLAGS = -pipe -DQWS -fno-exceptions -fno-rtti -O2 -Wall -W
-DNO_DEBUG
SYSCONF_CFLAGS = -pipe -O2 -Wall -W
# Default link type (static linking is still be used where required)
SYSCONF_LINK_LIB = $(SYSCONF_LINK_LIB_SHARED)
SYSCONF_LINK_TARGET = $(SYSCONF_LINK_TARGET_SHARED)
# Compiling library source
SYSCONF_CXXFLAGS_LIB = -fPIC
SYSCONF_CFLAGS_LIB = -fPIC
# Compiling shared-object source
SYSCONF_CXXFLAGS_SHOBJ = -fPIC
SYSCONF_CFLAGS_SHOBJ = -fPIC
# Linking Qt
SYSCONF_LIBS_QTLIB = $(SYSCONF_LFLAGS_X11) $(QT_LIBS_MT) $(QT_LIBS_OPT)
# Linking Qt applications
SYSCONF_LIBS_QTAPP =
#############################################################################
####### Compiler, tools and options
CXX = $(SYSCONF_CXX) $(QT_CXX_MT)
CXXFLAGS= $(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS)
CC = $(SYSCONF_CC) $(QT_C_MT)
CFLAGS = $(SYSCONF_CFLAGS)
INCPATH =
#LFLAGS = $(SYSCONF_LFLAGS_QT) $(SYSCONF_RPATH_QT) $(SYSCONF_LFLAGS)
$(QT_LFLAGS_MT)
LIBS = $(SUBLIBS) -L$(QTDIR)/lib -L/usr/X11R6/lib -lpthread -lqte-mt -lm
MOC = $(SYSCONF_MOC)
UIC = $(SYSCONF_UIC)
TAR = tar -cf
GZIP = gzip -9f
####### Files
HEADERS =
SOURCES = data_plot.cpp
OBJECTS = obj/data_plot.o
INTERFACES =
UICDECLS =
UICIMPLS =
SRCMOC =
OBJMOC =
DIST =
TARGET = data_plot
INTERFACE_DECL_PATH = .
####### Implicit rules
.SUFFIXES: .cpp .cxx .cc .C .c
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
####### Build rules
all: $(TARGET)
$(TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)
moc: $(SRCMOC)
tmake: Makefile
Makefile: data_plot.pro
tmake data_plot.pro -o Makefile
dist:
$(TAR) data_plot.tar data_plot.pro $(SOURCES) $(HEADERS) $(INTERFACES)
$(DIST)
$(GZIP) data_plot.tar
clean:
-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS) $(TARGET)
-rm -f *~ core
####### Sub-libraries
###### Combined headers
####### Compile
obj/data_plot.o: data_plot.cpp \
../../include/qwt_plot.h \
../../include/qwt_global.h \
../../include/qwt_grid.h \
../../include/qwt_dimap.h \
../../include/qwt_scldiv.h \
../../include/qwt_autoscl.h \
../../include/qwt_scldraw.h \
../../include/qwt_symbol.h \
../../include/qwt.h \
../../include/qwt_curve.h \
../../include/qwt_spline.h \
../../include/qwt_marker.h \
../../include/qwt_plot_printfilter.h \
../../include/qwt_plot_classes.h \
../../include/qwt_plot_item.h \
../../include/qwt_math.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/data_plot.o data_plot.cpp
--
[ signature omitted ]