I'm not running autogen.sh at all, I'm running "dpkg-buildpackage -rfakeroot -uc -b -d". This is supposed to generate the Makefile for me, right?

I tried running the autogen command you gave me, followed by make. It fails like this:

gcc -g -O2 -ggdb -O0 -DDEBUG -Wall -Wno-format-extra-args -Werror -o modest -Wl,--version-script=export.map modest-modest-main.o -pthread -pthread -Wl,--export-dynamic ./.libs/libmodest.a -ltime -lgtkhtml-3.14 -ltinymail-gnomevfs-1.0 -losso-abook-1.0 -lmcclient /usr/lib/libmodest-dbus-client-1.0.so -lnavigation /usr/lib/librtcom-accounts-ui-client.so -lrtcom-eventlogger -ltelepathy-glib -lcityinfo0 -lsqlite3 -losso -ltinymail-maemo-1.0 -ltinymailui-gtk-1.0 -ltinymail-camel-1.0 -ltinymailui-1.0 -ltinymail-1.0 -lcamel-lite-1.2 -lebook-1.2 -ledataserver-1.2 /usr/lib/libxml2.so -lhildon-1 -lhildonfm -lcanberra -lprofile -lwpeditor -lhildonmime -lgnomevfs-2 /usr/lib/libgconf-2.so /usr/lib/libgthread-2.0.so -lrt -lconic -lalarm -liphb -lhildonnotify -lnotify -lgtk-x11-2.0 -ldbus-glib-1 -lgdk-x11-2.0 /usr/lib/libatk-1.0.so -ldl /usr/lib/libgio-2.0.so -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 /usr/lib/libcairo.so -lpixman-1 -lpng12 -lXrender -lX11 -lz -lm -lpango-1.0 -lfreetype -lfontconfig /usr/lib/libgmodule-2.0.so -ldbus-1 -lpthread /usr/lib/libgobject-2.0.so /usr/lib/libglib-2.0.so /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libnss3.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libnssutil3.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libsmime3.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libssl3.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libsoftokn3.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libplds4.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libplc4.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/cs2007q3-glibc2.5-i486/bin/../lib/gcc/i486-pc-linux-gnu/4.2.1/../../../../i486-pc-linux-gnu/bin/ld: warning: libnspr4.so, needed by /usr/lib/libcamel-lite-1.2.so, not found (try using -rpath or -rpath-link) /usr/lib/libcamel-lite-1.2.so: undefined reference to `port_newar...@nss_3.2' /usr/lib/libcamel-lite-1.2.so: undefined reference to `nss_cmsmessage_getcontenti...@nss_3.2'
/usr/lib/libcamel-lite-1.2.so: undefined reference to `PR_Lock'
/usr/lib/libcamel-lite-1.2.so: undefined reference to `nss_cmssignerinfo_getsignercommonn...@nss_3.2' /usr/lib/libcamel-lite-1.2.so: undefined reference to `nss_initreadwr...@nss_3.2' /usr/lib/libcamel-lite-1.2.so: undefined reference to `nss_cmsdigestcontext_upd...@nss_3.2'
...
/usr/lib/libcamel-lite-1.2.so: undefined reference to `ssl_set...@nss_3.2'
/usr/lib/libcamel-lite-1.2.so: undefined reference to `PR_SetSocketOption'
collect2: ld returned 1 exit status

I thought the whole point of autogen was that it detected which libraries were available and made sure it passed the right arguments to gcc?

FWIW, those libraries seem to be in /usr/lib/microb-engine.

Anyway, even if that had worked, this would be debugging a version of modest compiled with debug flags, but not the tinymail libraries that were compiled with debug flags, right? So it's all useless to me anyway, since I'm trying to break in a function in the tinymail libraries. I want to make modest run with the debugging tinymail libraries. Or have I misunderstood something?

Sergio Villar Senin - svil...@igalia.com wrote:
What you describe is very rare, that SIGSEV means nothing for me.

You don't need to create packages everytime you change something. If you
have modest sources under /home/mat/modest/modest/modest-3.1.18+0m5/
then you can just do a gdb src/modest from that directory. That will
work. BTW what options are you passing to autogen.sh ?

Normally for Maemo you should do something like

./autogen.sh --prefix=/usr/bin --with-platform=maemo --enable-debug

Br

modest.me...@spamgourmet.com escribiu:
I guess I should back up a bit.  If this was a normal environment, I
would download a tarball, run ./configure, then make, find where the
binary got built, and then run gdb with that binary.  But that doesn't
work under scratchbox:

[sbox-FREMANTLE_X86: ~/modest/modest/modest-3.1.18+0m5/src] > ./modest -s
Segmentation fault (core dumped)
[sbox-FREMANTLE_X86: ~/modest/modest/modest-3.1.18+0m5/src] >
run-standalone.sh  ./modest
/usr/bin/run-standalone.sh: line 11: 25690 Segmentation fault      (core
dumped) "$@"
[sbox-FREMANTLE_X86: ~/modest/modest/modest-3.1.18+0m5/src] >
run-standalone.sh gdb ./modest
GNU gdb (GDB) 6.8.50.20090417
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
(gdb) run -s
Starting program: /home/mat/modest/modest/modest-3.1.18+0m5/src/modest

Program received signal SIGSEGV, Segmentation fault.
0x00828361 in __do_global_dtors_aux ()
0x00828361 <__do_global_dtors_aux+81>:    mov    (%eax),%edx

Why doesn't the compiled binary work?

So instead I'm doing the entire "dpkg-buildpackage -rfakeroot -uc -b -d"
thing and installing the packages, then trying to debug those.  That's
horribly inefficient (it has to rebuild from scratch every time, and do
it in both normal and debug modes).  Is that really what I have to do?

_______________________________________________
Modest-devel mailing list
Modest-devel@garage.maemo.org
https://garage.maemo.org/mailman/listinfo/modest-devel


_______________________________________________
Modest-devel mailing list
Modest-devel@garage.maemo.org
https://garage.maemo.org/mailman/listinfo/modest-devel


_______________________________________________
Modest-devel mailing list
Modest-devel@garage.maemo.org
https://garage.maemo.org/mailman/listinfo/modest-devel

Reply via email to