Trolltech Home | Qt-embedded-interest Home | Recent Threads | All Threads | Author | Date
All threads index page 1

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 ]