You are not logged in.
Hello
I need debugging symbols for the library libQtWekit.so.4, because I want to report a crash of Konqueror I am having constantly.
Thus, I obtained the PKGBUILD for building the package qtwebkit (the libQtWekit.so.4 library is included in this package) through ABS.
Later I have added to the PKGBUILD the option !strip:
options=('!strip')
and:
export CFLAGS="$CFLAGS -g -O1"
export CXXFLAGS="$CXXFLAGS -g -O1"
into the very beginning of the build() function.
All this according to the article named Debug-Getting Traces on the official Archlinux wiki
Afterward, I have builded the package by running: makepkg -s. The process was successful
Then I proceeded to install the package, but when I verify the debugging symbols for libQtWekit.so.4, running nm -a, I get the message: no symbols:
$ nm -a /usr/lib/libQtWebKit.so.4
nm: /usr/lib/libQtWebKit.so.4: no symbols
Could somebody help me for getting the symbols? I would be very grateful
This is the modified PKGBUILD:
# $Id: PKGBUILD 178045 2013-02-14 09:18:18Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
pkgname=qtwebkit
pkgver=2.3.beta2
_pkgver=2.3-beta2
pkgrel=1
arch=('i686' 'x86_64')
url='http://trac.webkit.org/wiki/QtWebKit'
pkgdesc='An open source web browser engine (Qt port)'
license=('LGPL2.1' 'GPL3')
depends=('qt' 'systemd' 'gstreamer0.10-base')
makedepends=('gperf' 'python2' 'ruby' 'git' 'mesa')
conflicts=('qt<4.8')
_qtver=4.8.4
source=("${pkgname}-${pkgver}.tar.gz"::"http://gitorious.org/webkit/qtwebkit-23/archive-tarball/${pkgname}-${_pkgver}"
"http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-${_qtver}.tar.gz"
'use-python2.patch'
'qwebview.patch')
options=('!strip')
sha1sums=('b1bfa9e3303ce9c95eec0a1e66b2b812b844bf08'
'f5880f11c139d7d8d01ecb8d874535f7d9553198'
'315b6ff603f35e5492a036f7082f6aa075dfb607'
'fed0c1a90e3997b5575dbc83d6ea23bc46097a6f')
build() {
export CFLAGS="$CFLAGS -g -O1"
export CXXFLAGS="$CXXFLAGS -g -O1"
cd webkit-qtwebkit-23
patch -p1 -i "${srcdir}"/use-python2.patch
OPTS="--no-webkit2"
if [ "${CARCH}" = "i686" ]; then
# FS#33418
OPTS="${OPTS} --no-sse2"
fi
export QTDIR=/usr
Tools/Scripts/build-webkit --qt \
--makeargs="${MAKEFLAGS}" \
--prefix=/usr \
${OPTS}
cd ../
# Build the QWebView plugin (FS#27914)
cd qt-everywhere-opensource-src-${_qtver}
patch -p1 -i "${srcdir}"/qwebview.patch
cd tools/designer/src/plugins/qwebview
qmake
make
}
package() {
cd webkit-qtwebkit-23
make INSTALL_ROOT="${pkgdir}" -C WebKitBuild/Release install
cd ../
cd qt-everywhere-opensource-src-${_qtver}/tools/designer/src/plugins/qwebview
make INSTALL_ROOT="${pkgdir}" install
}
I use Archlinux x86, kernel 3.7.9-1 and KDE 4.10
Offline
If I'm not wrong you need to add --debug to ${OPTS}
And there's no need to add -g to the CFLAGS/CXXFLAGS
Offline
Thank you so much for replying.
My apologies by this late answer.
I tried to build the package including the new changes, those you are suggesting. The PKGBUILD now looks like:
# $Id: PKGBUILD 178989 2013-03-01 10:24:37Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
pkgname=qtwebkit
pkgver=2.3.beta2
_pkgver=2.3-beta2
pkgrel=2
arch=('i686' 'x86_64')
url='http://trac.webkit.org/wiki/QtWebKit'
pkgdesc='An open source web browser engine (Qt port)'
license=('LGPL2.1' 'GPL3')
depends=('qt4' 'systemd' 'gstreamer0.10-base')
makedepends=('gperf' 'python2' 'ruby' 'git' 'mesa')
conflicts=('qt<4.8')
options=('!strip')
source=("${pkgname}-${pkgver}.tar.gz"::"http://gitorious.org/webkit/qtwebkit-23/archive-tarball/${pkgname}-${_pkgver}"
'use-python2.patch')
sha1sums=('b1bfa9e3303ce9c95eec0a1e66b2b812b844bf08'
'315b6ff603f35e5492a036f7082f6aa075dfb607')
build() {
cd webkit-qtwebkit-23
patch -p1 -i "${srcdir}"/use-python2.patch
OPTS="--no-webkit2"
if [ "${CARCH}" = "i686" ]; then
# FS#33418
OPTS="${OPTS} --no-sse2 --debug"
fi
export QTDIR=/usr
Tools/Scripts/build-webkit --qt \
--makeargs="${MAKEFLAGS}" \
--prefix=/usr \
${OPTS}
}
package() {
cd webkit-qtwebkit-23
make INSTALL_ROOT="${pkgdir}" -C WebKitBuild/Release install
}
Sadly, now I am getting an error at the build process:
moc Api/qwebkitplatformplugin.h
compiling .moc/debug-shared/moc_qwebkitplatformplugin.cpp
moc Api/qwebhistoryinterface.h
compiling .moc/debug-shared/moc_qwebhistoryinterface.cpp
moc Api/qwebpluginfactory.h
compiling .moc/debug-shared/moc_qwebpluginfactory.cpp
moc Api/qwebinspector.h
compiling .moc/debug-shared/moc_qwebinspector.cpp
moc Api/qwebplugindatabase_p.h
compiling .moc/debug-shared/moc_qwebplugindatabase_p.cpp
moc WebCoreSupport/InspectorServerQt.h
compiling .moc/debug-shared/moc_InspectorServerQt.cpp
moc WebCoreSupport/QtFallbackWebPopup.h
compiling .moc/debug-shared/moc_QtFallbackWebPopup.cpp
moc WebCoreSupport/FullScreenVideoQt.h
compiling .moc/debug-shared/moc_FullScreenVideoQt.cpp
rcc ../../WebCore/WebCore.qrc
compiling .rcc/debug-shared/qrc_WebCore.cpp
rcc ../../WebCore/inspector/front-end/WebKit.qrc
compiling .rcc/debug-shared/qrc_WebKit.cpp
rcc ../../WebCore/generated/InspectorBackendStub.qrc
compiling .rcc/debug-shared/qrc_InspectorBackendStub.cpp
rm -f libQtWebKit.so.4.9.2 libQtWebKit.so libQtWebKit.so.4 libQtWebKit.so.4.9
linking ../../../../../../lib/libQtWebKit.so.4.9.2
g++: error: no se reconoce la opción de línea de órdenes ‘-fuse-ld=gold’
g++: error: no se reconoce la opción de línea de órdenes ‘-fuse-ld=gold’
g++: error: no se reconoce la opción de línea de órdenes ‘-fuse-ld=gold’
make[2]: *** [../../../../../../lib/libQtWebKit.so.4.9.2] Error 1
make[2]: se sale del directorio `/home/zuargo/Paquetes/qt/src/qt-everywhere-opensource-src-4.8.3/src/3rdparty/webkit/Source/WebKit/qt'
make[1]: *** [sub-WebKit-qt-QtWebKit-pro-make_default-ordered] Error 2
make[1]: se sale del directorio `/home/zuargo/Paquetes/qt/src/qt-everywhere-opensource-src-4.8.3/src/3rdparty/webkit/Source'
make: *** [sub-webkit-make_default-ordered] Error 2
==> ERROR: Se produjo un error en build().
Cancelando...
Then I tried to build the package in a clean chroot but I get another error (something related to the chroot directory, not about the build process)
I will keep trying to build the package in a clean chroot.
Greetings
Offline
After about one month I have been able to build packages in a chroot environment.
Sadly, now I get another error by trying to build qtwebkit in the chroot directory, this one:
NOTIFICATIONS=1 ENABLE_PAGE_VISIBILITY_API=1 ENABLE_PROGRESS_ELEMENT=1 ENABLE_REQUEST_ANIMATION_FRAME=1 ENABLE_RESOLUTION_MEDIA_QUERY=1 ENABLE_SHARED_WORKERS=1 ENABLE_SMOOTH_SCROLLING=1 ENABLE_SQL_DATABASE=1 ENABLE_SVG=1 ENABLE_TOUCH_ADJUSTMENT=1 ENABLE_TOUCH_EVENTS=1 ENABLE_VIDEO=1 ENABLE_WEBGL=1 ENABLE_WEB_SOCKETS=1 ENABLE_WEB_TIMING=1 ENABLE_WORKERS=1 ENABLE_XHR_TIMEOUT=1 ENABLE_XSLT=1" --generator JS --include Modules/filesystem --include Modules/geolocation --include Modules/indexeddb --include Modules/mediasource --include Modules/notifications --include Modules/quota --include Modules/webaudio --include Modules/webdatabase --include Modules/websockets --include css --include dom --include editing --include fileapi --include html --include html/canvas --include html/shadow --include html/track --include inspector --include loader/appcache --include page --include plugins --include storage --include svg --include testing --include workers --include xml --outputDir generated --supplementalDependencyFile
generated/supplemental_dependency.tmp --preprocessor "/usr/lib/qt4/bin/moc -E" /build/src/webkit-qtwebkit-23/Source/WebCore/Modules/gamepad/NavigatorGamepad.idl
make[3]: Leaving directory `/build/src/webkit-qtwebkit-23/WebKitBuild/Debug/Source/WebCore'
QMAKEPATH=/build/src/webkit-qtwebkit-23/Tools/qmake /usr/lib/qt4/bin/qmake /build/src/webkit-qtwebkit-23/Source/WebCore/Target.pri CONFIG+=no_webkit2 CONFIG+=no_force_sse2 CONFIG-=release CONFIG+=debug -o Makefile.WebCore.Target
make[2]: Leaving directory `/build/src/webkit-qtwebkit-23/WebKitBuild/Debug/Source/WebCore'
make[1]: Leaving directory `/build/src/webkit-qtwebkit-23/WebKitBuild/Debug'
I have searched for similar errors on the web, but I had no luck. Maybe because I know not what words to use in the search.
Offline