gcc-4.4.1 PET package to fix the broken devx in Karmic Woof

Stuff that has yet to be sorted into a category.
Post Reply
Message
Author
User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

gcc-4.4.1 PET package to fix the broken devx in Karmic Woof

#1 Post by Sit Heel Speak »

Download:
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
size: 206,116,044 bytes

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
Last edited by Sit Heel Speak on Sun 15 Nov 2009, 16:23, edited 5 times in total.

User avatar
sikpuppy
Posts: 415
Joined: Sun 29 Mar 2009, 05:54

Re: gcc-4.4.1 PET package to fix the broken devx in Karmic Woof

#2 Post by sikpuppy »

Doesn't pretty much the entire toolchain need to be updated to change compilers?
ASUS A1000, 800Mhz PIII Coppermine!, 192Mb RAM, 10Gb IBM Travelstar HDD, Build date August 2001.

User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

#3 Post by Sit Heel Speak »

Evidently there is not enough difference in libc.so.6, m4, aclocal et cetera between 4.2-rt-smp and upup-450 to matter.

The gcc supplied with Karmic Woof is the same version, 4.4.1, it's just missing some pieces.

The PET works. Proof is in the results. I have also compiled a 2.6.31.5 rt-smp kernel with this after recompiling gcc itself. This kernel runs splendidly in upup-432. There's too much else wrong with upup-432 to continue using it, but upup-450 is a useable platform after giving it this gcc, to base further development on.

User avatar
playdayz
Posts: 3799
Joined: Fri 25 Apr 2008, 18:57

#4 Post by playdayz »

Got it. Nevermind. Thanks. Sit Heel Speak, where would I find uPup 4.50 please?. I am using Upup 4.32 and then one I built with Woof with just few tweaks. uPup seems like the one that will work for me, for one reason because it will run SRWare Iron (requires libc 2.9+ I think, something like that). thanks.

Oh by the way, I tried to compile the ati catalyst drive in 4.32. I can't remember the exact error message but it might have had mktemp or something like that in it. Anyway, it's worth a shot. thanks again.

User avatar
gposil
Posts: 1300
Joined: Mon 06 Apr 2009, 10:00
Location: Stanthorpe (The Granite Belt), QLD, Australia
Contact:

#5 Post by gposil »

SHS
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.
Dpup-482 uses gcc-4.3.2 from its Lenny base...and the devx is working...4.4.2 is in the unstable branch, but there is a backport in the works...although the news from Deb Central is that 4.3.2 will remain for the next stable release(Squeeze) at least.

Cheers
Guy
[img]http://gposil.netne.net/images/tlp80.gif[/img] [url=http://www.dpup.org][b]Dpup Home[/b][/url]

User avatar
playdayz
Posts: 3799
Joined: Fri 25 Apr 2008, 18:57

#6 Post by playdayz »

YES! Sit Heel Speak. I installed the kernel sources, devx_432, and your pet and, cowabunga, the ati display driver installed itself very neatly and worked on the next restart of X. This is the ati proprietary driver; I downloaded it from the ati/amd support and am happy as can be.

User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

replies to gposil and playdayz

#7 Post by Sit Heel Speak »

@gposil:

Hi Guy,

I look forward with eagerness to a working Synaptic. I will borrow with gratitude from the ideas you have materialized in dpup, and will contribute to dpup development if I can. I hope that, now that upup has this strong compiler, this will promote cross-fertilization between dpup and upup. (Assuming that ttuuxxx hasn't already created a better gcc of course :lol: )

When I started work on this PET, 4.4.1 was the latest stable gcc. Version 4.4.1 is what's in Ubuntu 9.10-final and therefore in Karmic Woof.

If you have the adequate testing utils+libs on your system (guile 1.4.1--not newer!, gperf 3.0.4, autogen 5.9.8, and the newest runtest suite) then this gcc passes all tests in make check, 100%, not even a single warning.

This gcc source is patched with the complete patchset for gcc from Ubuntu 9.10 Final. This patchset is distributed on the Debian mirrors, not Ubuntu. So, I have reasonably high confidence that it can handle Debian sourcecode.

This gcc is also patched to accept march=atom and mtune=atom. A Dell Mini-9 with the kernel accordingly compiled for its atom-n270 hyperthreading cpu, using this gcc and two changed lines in the Makefiles...is a wonderful thing, a sight to behold. Faster than the well-known bat.

@playdays:

Thank you for trying, and, glad it worked for you!

Post Reply