Greetings! Robert Boyer <[EMAIL PROTECTED]> writes:
> You might want to look at > > http://www.BitWagon.com/tub/tub.html > > for documentation of tub (evade task_unapped_base) for a hack that supposedly > lets one get up 2.8GB. Fairly recent. And it is a user-mode hack, i.e., one > does not need to be root or rebuild the kernel. > This is what I love about the open source community -- what ingenuity to scratch the common itch! The depth of knowledge squirreled away in at least some brain of the world will never cease to amaze me. In principle, we could incorporate tub into gcl. It is x86 only however. Furthermore, a quick attempt at building with gcc-4.0 gives: gcc -g -O3 -c -o tub_cstart.o tub_cstart.c tub_cstart.c:15: warning: conflicting types for built-in function 'bzero' tub_cstart.c: In function 'tub_cstart': tub_cstart.c:156: warning: incompatible implicit declaration of built-in function 'strlen' gcc -c -o tub_libc.o tub_libc.S gcc -g -O3 -c -o tub_mmap.o tub_mmap.c gcc -g -O3 -c -o tub_sigbus.o tub_sigbus.c In file included from /usr/include/sys/types.h:216, from /usr/include/linux/types.h:6, from /usr/include/asm-generic/siginfo.h:5, from /usr/include/asm/siginfo.h:4, from tub_signal.h:84, from tub_sigbus.c:1: /usr/include/sys/select.h:38: error: conflicting types for 'sigset_t' tub_signal.h:10: error: previous declaration of 'sigset_t' was here In file included from /usr/include/asm/siginfo.h:4, from tub_signal.h:84, from tub_sigbus.c:1: /usr/include/asm-generic/siginfo.h:75: error: syntax error before 'clock_t' /usr/include/asm-generic/siginfo.h:92: error: syntax error before '}' token /usr/include/asm-generic/siginfo.h:93: error: syntax error before '}' token In file included from tub_sigbus.c:1: tub_signal.h:88: error: syntax error before 'siginfo_t' tub_sigbus.c:6: error: syntax error before 'siginfo_t' tub_sigbus.c: In function 'handler': tub_sigbus.c:8: error: 'uc' undeclared (first use in this function) tub_sigbus.c:8: error: (Each undeclared identifier is reported only once tub_sigbus.c:8: error: for each function it appears in.) tub_sigbus.c:12: error: 'signum' undeclared (first use in this function) tub_sigbus.c:15: error: 'info' undeclared (first use in this function) tub_sigbus.c: In function 'setup_sigbus_handler': tub_sigbus.c:45: error: syntax error before 'siginfo_t' make: *** [tub_sigbus.o] Error 1 This or analogous approaches are worth pursuing, but the static build is the sure fire solution within our control. I don't feel comfortable shipping a static gcl, but the power user should be able to so build if they desire. Just another note about binary lifetime -- while static linking removes binary obsolescence induced by external library change, gcl may silently break in any case with gcc upgrades. Being able to rebuild from source at all times appears so important. Just recently, sigblock and sigsetmask have become deprecated, which means we have to remove them before the next gcc go round when they simply will be gone. One other issue on the static front -- there are a number of functions in libc currently in use by gcl for which the linker warns that compatible dynamic runtime libc versions are required even with static linking. These are mostly password lookups and the like, and may be replaceable. At present, you can see the list by adding "-static " to compiler::*ld*, and calling (compiler::link nil "new") -- this wont work (yet) but will display the errors to which I'm referring. Take care, Take care, > Bob > > > > -- Camm Maguire [EMAIL PROTECTED] ========================================================================== "The earth is but one country, and mankind its citizens." -- Baha'u'llah _______________________________________________ Gcl-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gcl-devel
