You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Hung Mark <ma...@gmail.com> on 2014/08/16 01:48:16 UTC

How to add generate symbols for gdb?

Hi,

I tried to configure with --enable-symbols to build with symbolic
generation.
Here is my command line:

./configure \
     --with-dmake-url=
http://dmake.apache-extras.org.codespot.com/files/dmake-4.12.tar.bz2 \
     --with-epm-url=
http://www.msweet.org/files/project2/epm-3.7-source.tar.gz \
     --disable-odk \
     --disable-binfilter \
     --with-lang="en-US zh-TW" \
     --enable-symbols

Then in the module I wanted to debug, I built with

build debug=t dbglevel=0 && deliver

However gdb still told me that there was no debugging symbols found.

Do I have to build all with debug=t to in order to get symbolic tables?
What are the necessary and not necessary steps?
Please suggest. Thanks.


Best Regards

Re: How to add generate symbols for gdb?

Posted by Hung Mark <ma...@gmail.com>.
Hi Ariel,

After I reconfigured the project  with --build-with-package-format option,
debugging symbols were successfully generated,
even before I tried to use dbglevel=2 or debug=t in the target module.

I also updated wiki
https://wiki.openoffice.org/wiki/Documentation/Building_Guide_AOO/Step_by_step
for these options.


By the way, I also tried build debug=true dbg_build_only=true. It keep eat
up my diskspace ( 35GB before I break it ).
I wonder what it does and whether it is still a valid command.

Thank you for all the effort.




2014-08-17 0:55 GMT+08:00 Ariel Constenla-Haile <ar...@apache.org>:

> On Sun, Aug 17, 2014 at 12:27:39AM +0800, Hung Mark wrote:
> > Here is how I did:
> > After I build & deliver in the module, I go into instsetoo_native, then
> > build --all -P4 -- -P4
> > After that, I install all packages generated with dpkg -i.
> > Will it work this way?  They should work the same except my way takes
> > longer.
>
> I guess symbols are stripped somewhere in that process.
>
>
> > > It's better to move the installation from instsetoo_native to another
> > > place, build the needed modules with debug symbols, then copy the
> > >
> >
> > What do you mean by moving instsetoo_native to another place?
>
> I mean move the installation set that is generated there when you build
> with
>
> --with-package-format="installed"
>
> In this case, you have an office installation in
>
> instsetoo_native/unxlngx6/Apache_OpenOffice/installed/install/en-US
>
> and the SDK in
>
> instsetoo_native/unxlngx6/Apache_OpenOffice_SDK/installed/install/en-US
>
>
> Then move that installation somewhere else, in your home directory, for
> example.
>
> This will work if you don't need the desktop integration, it is faster
> to build (as you don't build rpms/debs). Then copy the libraries with
> debugging symbols from the source tree output directory to that
> installation.
>
>
> > I assume that you suggest this for preserving my original installation,
>
> No, I meant not to build packages; or, if you do so, rebuild the
> libraries you need with debugging symbols and copy them back to the
> place where you installed the office, because the whole process of
> building packages and installing them seems to be stripping the
> libraries.
>
>
> Regards
> --
> Ariel Constenla-Haile
> La Plata, Argentina
>

Re: How to add generate symbols for gdb?

Posted by Ariel Constenla-Haile <ar...@apache.org>.
On Sun, Aug 17, 2014 at 12:27:39AM +0800, Hung Mark wrote:
> Here is how I did:
> After I build & deliver in the module, I go into instsetoo_native, then
> build --all -P4 -- -P4
> After that, I install all packages generated with dpkg -i.
> Will it work this way?  They should work the same except my way takes
> longer.
 
I guess symbols are stripped somewhere in that process.


> > It's better to move the installation from instsetoo_native to another
> > place, build the needed modules with debug symbols, then copy the
> >
> 
> What do you mean by moving instsetoo_native to another place?

I mean move the installation set that is generated there when you build
with

--with-package-format="installed"

In this case, you have an office installation in 

instsetoo_native/unxlngx6/Apache_OpenOffice/installed/install/en-US

and the SDK in

instsetoo_native/unxlngx6/Apache_OpenOffice_SDK/installed/install/en-US


Then move that installation somewhere else, in your home directory, for
example.

This will work if you don't need the desktop integration, it is faster
to build (as you don't build rpms/debs). Then copy the libraries with
debugging symbols from the source tree output directory to that
installation.


> I assume that you suggest this for preserving my original installation,

No, I meant not to build packages; or, if you do so, rebuild the
libraries you need with debugging symbols and copy them back to the
place where you installed the office, because the whole process of
building packages and installing them seems to be stripping the
libraries.


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: How to add generate symbols for gdb?

Posted by Hung Mark <ma...@gmail.com>.
Hi Ariel,



> > Do I have to build all with debug=t to in order to get symbolic tables?
> > What are the necessary and not necessary steps?
>
> Symbols might be stripped. Look at LinuxX86-64Env.Set.sh and make sure
> that
>
> ENABLE_SYMBOLS="TRUE"
> DISABLE_STRIP="TRUE"
>
>
My LinuxX86-64Env.Set.sh have these options turned on already.



> In theory, --enable-symbols should turn on --disable-strip-solver.
>
> > Please suggest. Thanks.
>
> Are you copying the libraries with debug symbols back in your
> installation? Or are you build the whole office and taking the
> installation from instsetoo_native?
>
>
Here is how I did:
After I build & deliver in the module, I go into instsetoo_native, then
build --all -P4 -- -P4
After that, I install all packages generated with dpkg -i.
Will it work this way?  They should work the same except my way takes
longer.


> It's better to move the installation from instsetoo_native to another
> place, build the needed modules with debug symbols, then copy the
>

What do you mean by moving instsetoo_native to another place?
I assume that you suggest this for preserving my original installation,
which may be not necessary for me because I work in VM that is built
exclusive for AOO.


> libraries back.
>
> In old dmake modules, for example sd
>
> cd sd
> build debug=true dbglevel=2 && deliver
> cp unxlngx6/lib/*.so <office installation>/program/
>
>
> In make based modules, for example sw
>
> cd sw
> make -sr DEBUG=yes
> cp ../solver/420/unxlngx6/workdir/LinkTarget/Library/*sw*.so <office
> installation>/program/
>
>
Great!  Copying those files is obviously faster than re-install debian
packages.
I will try to reconfigure and build it again with a cleaner environment.

Re: How to add generate symbols for gdb?

Posted by Ariel Constenla-Haile <ar...@apache.org>.
On Sat, Aug 16, 2014 at 07:48:16AM +0800, Hung Mark wrote:
> Hi,
> 
> I tried to configure with --enable-symbols to build with symbolic
> generation.
> Here is my command line:
> 
> ./configure \
>      --with-dmake-url=
> http://dmake.apache-extras.org.codespot.com/files/dmake-4.12.tar.bz2 \
>      --with-epm-url=
> http://www.msweet.org/files/project2/epm-3.7-source.tar.gz \
>      --disable-odk \
>      --disable-binfilter \
>      --with-lang="en-US zh-TW" \
>      --enable-symbols
> 
> Then in the module I wanted to debug, I built with
> 
> build debug=t dbglevel=0 && deliver
> 
> However gdb still told me that there was no debugging symbols found.
> 
> Do I have to build all with debug=t to in order to get symbolic tables?
> What are the necessary and not necessary steps?

Symbols might be stripped. Look at LinuxX86-64Env.Set.sh and make sure
that 

ENABLE_SYMBOLS="TRUE"
DISABLE_STRIP="TRUE"

In theory, --enable-symbols should turn on --disable-strip-solver.

> Please suggest. Thanks.

Are you copying the libraries with debug symbols back in your
installation? Or are you build the whole office and taking the
installation from instsetoo_native?


It's better to move the installation from instsetoo_native to another
place, build the needed modules with debug symbols, then copy the
libraries back.

In old dmake modules, for example sd

cd sd
build debug=true dbglevel=2 && deliver
cp unxlngx6/lib/*.so <office installation>/program/


In make based modules, for example sw

cd sw
make -sr DEBUG=yes
cp ../solver/420/unxlngx6/workdir/LinkTarget/Library/*sw*.so <office installation>/program/


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: How to add generate symbols for gdb?

Posted by Hung Mark <ma...@gmail.com>.
No. Dbglevel=2 doesn't work.



2014-08-16 17:30 GMT+08:00 John O'Sullivan <os...@gmail.com>:

> Dbglevel=2 ?
> On 16 Aug 2014 00:48, "Hung Mark" <ma...@gmail.com> wrote:
>
> > Hi,
> >
> > I tried to configure with --enable-symbols to build with symbolic
> > generation.
> > Here is my command line:
> >
> > ./configure \
> >      --with-dmake-url=
> > http://dmake.apache-extras.org.codespot.com/files/dmake-4.12.tar.bz2 \
> >      --with-epm-url=
> > http://www.msweet.org/files/project2/epm-3.7-source.tar.gz \
> >      --disable-odk \
> >      --disable-binfilter \
> >      --with-lang="en-US zh-TW" \
> >      --enable-symbols
> >
> > Then in the module I wanted to debug, I built with
> >
> > build debug=t dbglevel=0 && deliver
> >
> > However gdb still told me that there was no debugging symbols found.
> >
> > Do I have to build all with debug=t to in order to get symbolic tables?
> > What are the necessary and not necessary steps?
> > Please suggest. Thanks.
> >
> >
> > Best Regards
> >
>

Re: How to add generate symbols for gdb?

Posted by John O'Sullivan <os...@gmail.com>.
Dbglevel=2 ?
On 16 Aug 2014 00:48, "Hung Mark" <ma...@gmail.com> wrote:

> Hi,
>
> I tried to configure with --enable-symbols to build with symbolic
> generation.
> Here is my command line:
>
> ./configure \
>      --with-dmake-url=
> http://dmake.apache-extras.org.codespot.com/files/dmake-4.12.tar.bz2 \
>      --with-epm-url=
> http://www.msweet.org/files/project2/epm-3.7-source.tar.gz \
>      --disable-odk \
>      --disable-binfilter \
>      --with-lang="en-US zh-TW" \
>      --enable-symbols
>
> Then in the module I wanted to debug, I built with
>
> build debug=t dbglevel=0 && deliver
>
> However gdb still told me that there was no debugging symbols found.
>
> Do I have to build all with debug=t to in order to get symbolic tables?
> What are the necessary and not necessary steps?
> Please suggest. Thanks.
>
>
> Best Regards
>