--
Chromium OS Developers mailing list: chromiu...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-os-dev?hl=en
(Just posting this in case what Albert recommends doesn't help; I
always do release builds, so I'm not sure if there are changes to what
gets stripped when you do a debug build.)
If the KEEP_CHROME_DEBUG_SYMBOLS environment variable is nonempty, the
chromeos-chrome ebuild will run the strip command with "--strip-debug
--keep-file-symbols" instead of "--strip-unneeded". Note that despite
the variable name, you still won't have full debug symbols, but you
should at least get file and function names in backtraces (and you can
always mess with the arguments provided by KEEP_CHROME_DEBUG_SYMBOLS
if needed).
REMOVE_WEBCORE_DEBUG_SYMBOLS=0 BUILDTYPE=Debug
FEATURES="-usersandbox noclean splitdebug" CFLAGS="-O0 -pipe
-march=atom -mtune=atom -mfpmath=sse -I/build/x86-generic/usr/include/
-I/build/x86-generic/include/ -g" CHROME_ORIGIN=LOCAL_SOURCE
CXXFLAGS="$CFLAGS" USE="-build_tests -autotest gold"
emerge-x86-generic -1 chromeos-chrome
Then you need to do some voodoo when you start gdb, so it knows where
to find all your libraries and splitdebug files,
(gdb) set sysroot /build/x86-generic
(gdb) set debug-file-directory /build/x86-generic/usr/lib/debug
(gdb) file /build/x86-generic/opt/google/chrome/chrome
(gdb) target remote 172.22.75.80:1234
-- Kenneth Waters
set solib-absolute-prefix /build/x86-agzfile /build/x86-agz/opt/google/chrome/chrome
symbol-file /build/x86-agz/usr/lib/debug/opt/google/chrome/chrome.debugtarget remote 172.31.130.201:1234
I suspect that its due to the INSTALL_MASK. You might be able to over-ride:
sudo INSTALL_MASK="" gmerge chromeos-chrome
> Cheers,
> -Steven
>
>
> On Wed, Dec 22, 2010 at 2:13 PM, Kenneth Waters <kwa...@chromium.org>wrote:
>
> > I was doing this a few weeks ago, back when Chrome was building for
> > stabs, so some of the CFLAGS changes might not apply. I build chrome
> > with splitdebug instead of no strip, that way I don't have to transfer
> > 1GiB of symbols over to the device. I also use noclean so gdb can
> > find the sources.
> >
> > REMOVE_WEBCORE_DEBUG_SYMBOLS=0 BUILDTYPE=Debug
> > FEATURES="-usersandbox noclean splitdebug" CFLAGS="-O0 -pipe
> > -march=atom -mtune=atom -mfpmath=sse -I/build/x86-generic/usr/include/
> > -I/build/x86-generic/include/ -g" CHROME_ORIGIN=LOCAL_SOURCE
> > CXXFLAGS="$CFLAGS" USE="-build_tests -autotest gold"
> > emerge-x86-generic -1 chromeos-chrome
> >
> > Then you need to do some voodoo when you start gdb, so it knows where
> > to find all your libraries and splitdebug files,
> >
> > (gdb) set sysroot /build/x86-generic
> > (gdb) set debug-file-directory /build/x86-generic/usr/lib/debug
> > (gdb) file /build/x86-generic/opt/google/chrome/chrome
> > (gdb) target remote 172.22.75.80:1234
> >
> > -- Kenneth Waters
> >
>
We use INSTALL_MASK to mask it out, and it's because the rootfs isn't big enough to hold all the debug symbols.