From: Stefan R. <ste...@gm...> - 2006-11-18 18:38:15
|
Hello, as it was already mentioned serevral times here I am using strip to reduce the size of the static library. When I call strip libopenvrml.a i get I library with the reduced size of about 20MB. This is still very huge, but besides of this I get a lot uf undefined references trying to link to that stripped library. So could someone explain to me in detail how to strip the library correctly? I only need some basic file output of vertex and index lists, normals, vertex colors and texture coordinates, but I was not able to figure out how to do that. Sorry if this is a noob question. -- TIA, Stefan |
From: Braden M. <br...@en...> - 2006-11-18 19:59:39
|
On Sat, 2006-11-18 at 19:38 +0100, Stefan Rilling wrote: > Hello, > > as it was already mentioned serevral times here I am using strip to > reduce the size of the static library. When I call > > strip libopenvrml.a > > i get I library with the reduced size of about 20MB. This is still very > huge, 20 MB is in the ballpark of expected sizes. > but besides of this I get a lot uf undefined references trying > to link to that stripped library. So could someone explain to me in > detail how to strip the library correctly? I only need some basic > file output of vertex and index lists, normals, vertex colors and > texture coordinates, but I was not able to figure out how to do that. > Sorry if this is a noob question. Stripping a static library is a little unusual; and you might have to play with some of the options to strip to see what works. Read "man strip". You definitely don't want to strip *everything*; I'd start with --strip-unneeded. -- Braden McDaniel e-mail: <br...@en...> <http://endoframe.com> Jabber: <br...@ja...> |
From: Stefan R. <ste...@gm...> - 2006-11-18 23:00:47
|
Hello, BM> Stripping a static library is a little unusual; and you might have to BM> play with some of the options to strip to see what works. Read "man BM> strip". You definitely don't want to strip *everything*; I'd start with BM> --strip-unneeded. I forgot to mention that I already tried all the options strip offers. both --strip-unneeded and --discard-all give me the error: BFD: BFD 2.15.91 20040904 internal error, aborting at ../../src/bfd/coffcode.h l ine 852 in handle_COMDAT BFD: Please report this bug. --discard-locals and --strip-debug do not reduce the size nameable. The problem with the size of libopenvrml.a I have is that the linking process for my app takes about 10 minutes, and as I'm quite new to openVRML, I have to recompile very often to try different things. So do I have any other chances to speed up linking instead of striping the library? -- Stefan |
From: Braden M. <br...@en...> - 2006-11-19 06:05:51
|
On Sun, 2006-11-19 at 00:00 +0100, Stefan Rilling wrote: > Hello, > > BM> Stripping a static library is a little unusual; and you might have to > BM> play with some of the options to strip to see what works. Read "man > BM> strip". You definitely don't want to strip *everything*; I'd start with > BM> --strip-unneeded. > I forgot to mention that I already tried all the options strip offers. > both --strip-unneeded and --discard-all give me the error: > BFD: BFD 2.15.91 20040904 internal error, aborting at ../../src/bfd/coffcode.h l > ine 852 in handle_COMDAT > > BFD: Please report this bug. Bummer. Oh, well. It's Cygwin. > --discard-locals and --strip-debug do not reduce the size nameable. > The problem with the size of libopenvrml.a I have is that the linking > process for my app takes about 10 minutes, and as I'm quite new to > openVRML, I have to recompile very often to try different things. So > do I have any other chances to speed up linking instead of striping > the library? You could not use Cygwin/gcc. gcc doesn't handle lots of large symbols particularly well on any platform--though this is improving. (The Red Hat variant of gcc 4.1.1 that ships with Fedora Core 6 includes improvements that make compiling/linking OpenVRML *fly* relative to previous releases.) In general, if something is slow, doing it on Cygwin will make it even slower. Can you use the Microsoft compiler? -- Braden McDaniel e-mail: <br...@en...> <http://endoframe.com> Jabber: <br...@ja...> |
From: Reed H. <re...@in...> - 2006-11-19 18:21:56
|
Braden McDaniel wrote: > You could not use Cygwin/gcc. gcc doesn't handle lots of large symbols > Can you use the Microsoft compiler? I usually prefer MinGW (with MSYS), though I've never tried Openvrml with it. Reed |
From: Reed H. <re...@in...> - 2006-11-19 18:26:14
|
Reed Hedges wrote: > Braden McDaniel wrote: > >> You could not use Cygwin/gcc. gcc doesn't handle lots of large symbols > >> Can you use the Microsoft compiler? > > I usually prefer MinGW (with MSYS), though I've never tried Openvrml > with it. It may have similar problems, since the gcc port is similar (though the libraries are not) Reed |
From: Stefan R. <ste...@gm...> - 2006-11-19 23:46:32
|
Hello, Sunday, November 19, 2006, 7:43:12 PM, you wrote: RH> Reed Hedges wrote: >> Braden McDaniel wrote: >> >>> You could not use Cygwin/gcc. gcc doesn't handle lots of large symbols >> >>> Can you use the Microsoft compiler? >> >> I usually prefer MinGW (with MSYS), though I've never tried Openvrml >> with it. RH> It may have similar problems, since the gcc port is similar (though the RH> libraries are not) I compiled openVRML with both Cygwin and MinGW and tried to strip it, with similar failures. I also think I would have to make some major changes to the Makefile to compile it with the Visual C++ compiler, and as I am usually developing with MinGW, I would prefer to avoid this opportunity. So are there any other options for me to make the library smaller or do I have to get used to this? -- Thanks for the answers, Stefan |
From: Braden M. <br...@en...> - 2006-11-20 01:17:08
|
On Mon, 2006-11-20 at 00:46 +0100, Stefan Rilling wrote: > I compiled openVRML with both Cygwin and MinGW and tried to strip it, > with similar failures. I also think I would have to make some major changes > to the Makefile to compile it with the Visual C++ compiler, and as I > am usually developing with MinGW, I would prefer to avoid this > opportunity. The OpenVRML distribution includes project files for Visual C++ 2005. -- Braden McDaniel e-mail: <br...@en...> <http://endoframe.com> Jabber: <br...@ja...> |