Mail Archives: djgpp/1996/04/24/10:34:57
>But this is what I get from dosemu ....
>
>
>D:\SRC\85309\ASSGN\1\Q2>strip --strip-all lbb.exe
>d:/djgpp/bin/strip.exe: lbb.exe: File format not recognized
You can't strip .exes; you have to do
exe2coff lbb.exe
strip --strip-all lbb
coff2exe lbb
>Not that it's a great concern though, I notice that
>the targets on msdos are huge compared to Linux
>
># v /a5/src/85309/assgn/1/q2/lbb.exe
>-rwxr-xr-x 1 root root 290326 Apr 24 19:37 /a5/src/85309/assgn/1/q2/lbb.exe*
>
>Even without stripping that's about 4 times larger!
Linux has shared libraries, so library functions used under Linux don't
actually have to be linked into the executable, but can be dynamically
loaded at runtime. (This is a slight oversimplification.) DJGPP doesn't
at this point. The closest thing is DXEs, via which it should be possible
to make jumptable-style shared libs. Linux used to use these when it was
a.out-based, but now it's ELF-based and uses smoother ELF shared libs.
Therefore, if your program uses, say, 100K of standard library functions
(remember, the whole object file has to be linked in, not just the function)
then it will be about 100K larger under DJGPP.
-- Aaron Ucko (ucko AT vax1 DOT rockhurst DOT edu; finger for PGP public key) | httyp!
"That's right," he said. "We're philosophers. We think, therefore we am."
-- Terry Pratchett, _Small Gods_ | Geek Code 3.1 [for explanation, finger
hayden AT mankato DOT msus DOT edu]: GCS/M/S/C d- s: a18 C++(+++)>++++ UL++>++++ P++
L++>+++++ E- W(-) N++(+) o+ K- w--- O M@ V-(--) PS++(+++) PE- Y(+) PGP(+) t(+)
!5 X-- R(-) tv-@ b++(+++) DI+ !D-- G++(+++) e->+++++(*) h!>+ r-(--)>+++ y?
- Raw text -