[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: debug info format



On Tue, Jan 29, 2002 at 07:30:47PM +0200, Alexei Khlebnikov wrote:
> On Tue, 29 Jan 2002 11:03:02 -0500 (EST)
> "Christopher C. Chimelis" <chris@debian.org> wrote:
> 
> CCC> On Tue, 29 Jan 2002, Daniel Jacobowitz wrote:
> 
> >> > I have a problem: my shared library cannot be linked, because it's too
> >> > big (all objs are 140 megs in size). I compile sources with "-g" option.
> >> > As I understand, g++ produces level 2 debug info in stubs+ format.
> >> > 
> >> > I want to use breakpoints and see stack backtraces. Can I switch
> >> > to level 1 info? (I guess: no.)
> 
> I guessed right? (I've read 'man gcc', but not sure about my english.)
> 
> >> > 
> >> > What debug info format is smaller and easier (linker consumes less memory)
> >> > to link?
> 
> Anyway, does someone know the answer?
> 
> >> Why can't you link it?  Just because it's big shouldn't stop anything. 
> >> What platform is this?
> 
> ia32: PentiumII-233, 128M RAM.
> 
> CCC> I'll second this.  I've linked some large files (circa 500MB) with stabs+
> CCC> info without a problem.  If you're bent on using stabs and not stabs+,
> CCC> though, you can compile the files with -gstabs.  See the gcc docs before
> CCC> doing this, though, as there are some caveats if you're using gdb.
> 
> Can it help? I need half a day to recompile my lib.
> 
> 
> When I link it (I give a command 
> "g++-3.0 -o my_big_lib.so -lother_not_so_small_libs many_obj_files.o"
> ), I get the following error:
> 
> some_my_obj_file.o: could not read symbols: Memory exhausted
> collect2: ld returned 1 exit status
> 
> When I do the same on 512M RAM -machine, the linking succeeds.

You should add swap space in that case.  And:

> Note that /etc/security/limits.conf contains these lines:
> *		hard	data		100000
> *		hard	rss		100000
> *		hard	stack		100000
> *		hard	as		100000
> (limiting memory use to 100000 Kbs to prevent lockups).

after adding swap space increase the limits.

> Where can I find any docs on debug info formats comparison? gcc docs just say
> "this format used in old System V systems", "this format used in old BSD systems".
> It may be interesting for historics, but do not help in my case.

Stabs is the more compact of your alternatives.

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer



Reply to: