http://puppylinux.asia/tpp/SitHeelSpeak ... -4.4.1.pet
http://puppylinux.asia/tpp/SitHeelSpeak ... .1.pet.md5
username: puppy password: linux
or in rxvt, in a partition with 207 MB free, issue the commands
Code: Select all
wget -t0 -c --http-user=puppy --http-password=linux http://puppylinux.asia/tpp/SitHeelSpeak/SHS_upup_450_gcc-4.4.1.pet
wget -t0 -c --http-user=puppy --http-password=linux http://puppylinux.asia/tpp/SitHeelSpeak/SHS_upup_450_gcc-4.4.1.pet.md5
The devx built by Karmic Woof (upup-432, and ttuuxxx's upup-450) is broken. The gcc it provides is not able to compile a kernel. In fact it can't even compile gcc itself.
This PET package fixes that. It is gcc-4.4.1, compiled under Puppy 4.2-rt-smp, from the extravagantly-patched source I posted on October 27 2009 at
http://www.murga-linux.com/puppy/viewtopic.php?t=48238
How I built it: I compiled gcc twice, first into the regular target /usr and then into a scratchdir. Then, from the ls -ADRqph >/root/gcclist.txt listing of the scratchdir, I generated a bash script (using, I confess, Clipper Summer '87 under, ahem, Windows 98, followed by a pass through Notpad to revert to LF from CRLF format) to copy all the created files out of /usr into a sourcedir. Then, I made the PET package from this sourcedir, using dir2pet in upup-450.
This PET contains only gcc and mktemp (mktemp is necessary to compile the kernel and is missing from the Karmic Woof devx). This PET does not contain make, patch, and the related utilities and libraries. So, load the devx via Boot Manager (or, if a full install, mount it and copy its contents in using cp -uR ./ /) and then reboot (if a frugal install) and then install this PET.
I apologize in advance for the large size of it. I gave it the ability to compile every language except ada, also libgcj is in it. Also multilib support. And I did not strip anything. I did not have time to comb through and eliminate all the duplicate files which are already in the devx. So, if you have a full install and have copied-in the contents of the devx, and you uninstall this pet, then you'd better copy the contents of the devx back in again.
I have successfully tested this PET in upup-432 and upup-450; I compiled gcc itself with it in upup-432, and in upup-450 I have compiled kernel 2.6.31.5 from the November 11 git head branch of tuxonice (suitably patched for upup) with it, and this kernel runs nicely in upup-450.
This PET package should work in any Puppy version 4.22 or higher (in other words, which understands the new PET format) which carries kernel version 2.6.29.6 or newer (this is the kernel version in 4.2-rt-smp, which I compiled it in; it may work in older Puppies and older kernel versions, provided you can use tar -xzvf to extract the PET and copy-in the files manually, or rebuild an old-style PET package from it), provided the structure of petget (the script which underlies Puppy Package Manager) has not been revised, and provided that running /lib/libc.so.6 shows a version number not much higher than 2.10.n.
It will probably work in dpup-482, but I have not tried compiling anything in dpup-482 yet and so do not know whether its devx is broken (and thus needs this PET) or not.
HTH, SHS