SMP & 64 Bit

Under development: PCMCIA, wireless, etc.
Message
Author
halfmeg
Posts: 14
Joined: Sat 04 Aug 2007, 06:19

SMP & 64 Bit

#1 Post by halfmeg »

The cutting edge kernel post has gotten me all hot and bothered. I know Puppy is known for working wonders on older equipment but, the last two systems I purchased have been 64 bit Dual Core processors.

I looked around at a few of the current 64 bit distros and can't stand the idea of 7 to 12 install CDs.

Although I am somewhat new to Linux, I have built a kernel or two using Vector and currently have some time to experiment with an attempt at 64 bit SMP Puppy. This would not be a downward compatible version, it would have to have a EM64T processor.

My initial questions concern the build environment. The build puppy from scratch page still guides one through T2 and Vector Linux as platform. Is that still current or can Puppy now build itself?

For a pure 64 bit environment ( no 32 bit libraries ) I may need to install one of the monster 64 bit distros to get the current GCC and LIBC toolsets to build with, correct? Any recommendations on which distro?

Would like to stick with 2.6.21.5 kernel since some tinkering is already going on with it. Does the patched kernel from puptrix.org for 21.7 accept the RT and Suspend patches mentioned in cutting-edge post? Is -ck patch totally out of the question or does it need modification to adjust to the other patches ( puppy, RT & Suspend ) for proper application?

This won't be an overnight thing for me. It might draw out to be unfinished before the next Puppy arrives. My goals are to get the most out of my latest system purchases using a thin linux distro. One application I am aiming for is MythTV running under Puppy. Another is a mainframe hardware emulator ( 64 bit ) bootable from USB device.

Phil - I may need some assistance in building all this stuff from source to 64 bit executables ( nothing is ever as easy as it appears to be )

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#2 Post by Lobster »

My initial questions concern the build environment. The build puppy from scratch page still guides one through T2 and Vector Linux as platform. Is that still current or can Puppy now build itself?
Puppy can compile itself with an add on

you will need the latest compiler .sfs
http://puppylinux.org/wikka/Compiling

which you can find here
http://distro.ibiblio.org/pub/linux/dis ... modules-2/

Very exciting project
good luck with SuperPup :)
Last edited by Lobster on Thu 19 May 2011, 14:50, edited 1 time in total.
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

raffy
Posts: 4798
Joined: Wed 25 May 2005, 12:20
Location: Manila

ideas

#3 Post by raffy »

You may get some ideas from here (Cutting edge kernel for 2.17 ):
http://murga-linux.com/puppy/viewtopic.php?t=19719
Puppy user since Oct 2004. Want FreeOffice? [url=http://puppylinux.info/topic/freeoffice-2012-sfs]Get the sfs (English only)[/url].

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

#4 Post by Sit Heel Speak »

Patching for rt doesn't need Vector, only the devx add-in and some basic kernel-compiling know-how. For me, the rt-patched Puppy is unstable. The ck patch generated errors. Perhaps someone who knows C can look at the errors and figure out some trivial trick to get it to go.

Eventually I compiled a ck-patched Puppy kernel under Gentoo, but yee gods what a colossal effort it took. ck-Puppy is stable, and XArchive unpacks compressed packages (on a hard drive install) remarkably fast under ck, but the small benefit is hardly worth the labor.

The genius who wrote the rt patch, Ingo Molnar, is also writing the cfs (completely fair scheduler) part of the 2.6.23 kernel. It is logical to assume that he is designing the two to play well together. Linus Torvalds seems convinced that cfs is just as good as or better than ck.

And so, I would speculate that patching Puppy to get both rt and a top-notch scheduler, a quest which eluded tempestuous and self (we could get one or the other, but not both), will become easy in the near future, when Puppy carries kernel 2.6.23. It might not even need a patch. Perhaps cfs will be the default 2.6.23 scheduler and rt the default kernel preemption model across all Linuxes. Or if not then maybe Barry will configure the kernel to make it so in Puppy.

halfmeg
Posts: 14
Joined: Sat 04 Aug 2007, 06:19

#5 Post by halfmeg »

Puppy can compile itself with an add on

you will need the latest compiler .sfs
Hmmm, I should have split the question I guess. Experimentation has found that the "Unleashed" stuff is binary PET packages.

There seemed to be no method to download all the source packages except via the T2 scripts. While attempting this using the most recent T2 file posted I recieved an error with the mirror location for every file until I removed the 83.133.xxx.xxx ( whatever it was - perhaps a local copy for someone ) from the mirror file. After that the sources were fetched from the original web site. Many of these no longer exist.

Perhaps only a very few ever build Puppy from scratch. Those that have may have done so when the most recent T2 scripts were posted ( 11 Sep 06 ). Then they would have been able to collect all the source packages and update the few that changed since then and simply add them to their local repository.

There seems to be a problem that there is no comprehensive Puppy source repository. This cause a problem when someone attempts to compile from source which is no longer available from www.xxxx.comf/xlite.tar.gz ( or similiar for not quite mainstream programs ) because the site is no longer on the web.

It is also a violation of the GPL, paragraph 6, which states source is to be available if a binary is distributed.

I could be wrong in that a Puppy source repository exists. The T2 script was the most efficient method to download 600+ packages without hunting and pecking for which tar.gz from this forum post or that blog needs to be incorporated to get what is needed to compile Puppy from scratch.

Although many source tarballs were not downloaded, I went ahead and attempted a Build-Target. It seemed to have worked fine until I reached a missing tarball ( flex - I think. The dev platform is powered off currently ) then the script spit out a few red lines, attempted to retrieve the package and stated something about the web site not existing ( www.xxxx.ru/flex - not sure of actual output.

The glibc package built however and one of my goals is to bring glibc up to current release levels. So far everything has been kinda getting familiar with the scripts and what might be needed to proceed from here.

Phil

Leachim
Posts: 229
Joined: Sun 27 May 2007, 23:04

#6 Post by Leachim »

halfmeg wrote:It is also a violation of the GPL, paragraph 6, which states source is to be available if a binary is distributed.
As to my understanding one must not supply all source code of unmodified parts - a reference to the original source (T2 in this case) should be sufficient.

The main effort in the Puppy distribution are the scripts that glue the system together and makes Puppy so different to other distributions. These scripts are shell-scripts and so per se open source (and the also contain the appropriate copyright messages in their headers)!

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#7 Post by BarryK »

If a source package is not at T2, I keep it at puptrix.org -- this is explained on the download page.
If a package is not at T2 or puptrix, let me know and I'll put it there.

Note, I only have to provide sources that are actually used in Puppy. The T2 build system requires more packages than end up in Puppy, and those extra packages are the responsibility of T2 to provide.

halfmeg
Posts: 14
Joined: Sat 04 Aug 2007, 06:19

#8 Post by halfmeg »

As to my understanding one must not supply all source code of unmodified parts - a reference to the original source (T2 in this case) should be sufficient.
You must have a different view than the GPL states in paragraph 1.
The “Corresponding Source

Leachim
Posts: 229
Joined: Sun 27 May 2007, 23:04

#9 Post by Leachim »

You should read further:
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
So if I am not profit-oriented and just include precompiled GPL-code without modifications in my project, I do not have to supply the source code of this unmodified parts myself!

It would be a horror and would turn GPL to nonsense, if any programmer who supplies a small patch would have to host the whole project!

jamesbond
Posts: 3433
Joined: Mon 26 Feb 2007, 05:02
Location: The Blue Marble

#10 Post by jamesbond »

halfmeg wrote:It is also a violation of the GPL, paragraph 6, which states source is to be available if a binary is distributed.
Just because *you* cannot find the source packages, doesn't mean that it is not offered (note that none of the GPL terms says that the source has to be made available through FTP, HTTP, online access, etc - only that when asked for, it should be provided, perhaps for a fee).

It would be prudent, polite, civilised, and most importantly, common sense to ask first before jumping to conclusions and accusing people of GPL violations.
Fatdog64 forum links: [url=http://murga-linux.com/puppy/viewtopic.php?t=117546]Latest version[/url] | [url=https://cutt.ly/ke8sn5H]Contributed packages[/url] | [url=https://cutt.ly/se8scrb]ISO builder[/url]

halfmeg
Posts: 14
Joined: Sat 04 Aug 2007, 06:19

#11 Post by halfmeg »

To Barry:

Thanks for the response concerning source. I believe there is a much larger problem here however. There should be a method to have reproducible results when building from source. Your PFS page mentions there are some manual steps to generate Puppy and that is understandable. There does not seem to be a method to recreate a particular version of Puppy from the source however.

You, John M. or both ( since there seems to be at least 2 repositories of Puppy related packages ) have a problem of overhead in outside contributions which don't seem to provide source for the object distributed.

A single example is the pet package for dosbox-cvs-0.71 ( http://dotpups.de/dotpups/Emulators/dos ... 1-i486.pet ). The forum post by jamesbond states it is from cvs 18 July 2007 ( changelog 0.71 ). Following the link to where it states the source is located one finds a CVS-Compile site where the CVS source is updated daily. Going on to sourceforge for the source used to build the pet package one finds dosbox-0.71 release but it is dated 30 July 2007. Who can tell where the actual source used in the pet package is located. This is exactly what the GPL requires, the source from which the object was built.

To Leachim in addition to Barry & John:
So if I am not profit-oriented and just include precompiled GPL-code without modifications in my project, I do not have to supply the source code of this unmodified parts myself!
If you distribute object code you must provide the source code it was created with. The T2 site is not obligated to provide me with anything as they have not provided me with object code. If there site disappears, is blocked by national quirkiness ( China comes to mind ), or any other action on their part which makes the alternate method of distribution to fail, there seems to be no backup. I am confused as to the status of your offer for a source CD as well. The page states it is available, however one of your forum posts states you have stopped offering it.

Perhaps what happened to MEPHIS directing people to use the UBUNTU source will explain it better.

http://software.newsforge.com/article.p ... 23/1728205

To jamesbond specifically and fyi for all else.

I have no problem asking for source when I can't find it. Please attempt to build Puppy from scratch yourself from the PFS web page and see what you encounter.

As to finding source, suppose I just check the GCC version in Puppy ( 3.4.4 ) and download from gcc.gnu.org . Unfortunately the source in Puppy has additional patches applied ( look in T2 source tarball ), so I wouldn't be starting at the same point as Puppy.

Since I have recently finished most of my efforts in porting GCC to a new platform ( IBM Mainframe ) I thought it would be prudent to perhaps attempt an upgrade to 4.2.1 for Puppy along with the glibc and binutils while a lot of the internals were still fresh in my mind.
It would be prudent, polite, civilised, and most importantly, common sense to ask first before jumping to conclusions and accusing people of GPL violations.
I haven't accused anyone of anything, I have only made statements of fact.

Phil

John Doe
Posts: 1681
Joined: Mon 01 Aug 2005, 04:46
Location: Michigan, US

#12 Post by John Doe »

halfmeg wrote:
It would be prudent, polite, civilised, and most importantly, common sense to ask first before jumping to conclusions and accusing people of GPL violations.
I haven't accused anyone of anything, I have only made statements of fact.
but perhaps quite a strange introduction.

User avatar
Dougal
Posts: 2502
Joined: Wed 19 Oct 2005, 13:06
Location: Hell more grotesque than any medieval woodcut

#13 Post by Dougal »

Halfmeg: As far as I understand, what you are saying about GPL violation is nonsense.
Barry is supposed to be able to produce the code on demand. That means that if you email him and say "Oi, mate, I want the code for Puppy", then you should be able to get a cd from him with all the code. (I think he wrote it on this forum about a year ago -- saying that's what the FSF lawyers told him.)

If distros were supposed to keep repositories of all their sources then most distros existing today would be in violation of the GPL.

Regarding the dosbox example, it's not an official package and hence has nothing to do with Barry or Puppy -- only packages in the Puppy repository are related to Barry.

As for the problem with T2 and PFS, you need to keep somehting in mind: you are the first person who got up off their arse and actually used PFS! Barry created it and no one has bothered using it, while there have been plenty of people pestering him on his blog about "when will there be a 64 bit/SMP Puppy?"
So you can't really expect Barry to waste his time keeping the PFS scripts up-to-date when they're not used.

I think T2 are more to blame here than Barry. They actually do distribute binaries, so you'd expect them to keep their repositories (I used to go to their repositories, to get packages that match Puppy's libs -- then one day they suddenly disappeared!).

If you want to try and find the correct URLs for packaegs, my advice would be to go to the T2 website, then look at the "package matrix". It will have the packages for the current T2, but you can find the different project
download pages there.

Something I think would be better, though, would be to try and convince Barry to upgrade the entire Puppy filesystem (long overdue), then you'll have an updated PFS to build the (long overdue) SMP/64 bit Puppy...
What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind

ChiJoan
Posts: 65
Joined: Fri 27 May 2005, 08:41

How about for Dual P3 Slot 1 motherboards?

#14 Post by ChiJoan »

Hello All,

I tested the CD Barbie Extended and it booted up, but like Mepis CD only saw one CPU. PCLinuxOS saw both though. I'm still testing though...last night Open Suse died on install and it has 512 MB RAM and a 60 GIG hard drive, maybe I'll have to try a newer NV card with more RAM?

If Puppy someday has support for these old server boards, I bet it will the fastest Distro anyware. I bought the mobo and CPUs for only $20.00, the full-tower Gateway 2000 case and special P4 power supply with the added 6 AUX plug did the trick.

Keep up the great work on Puppy Guys and Gals,
ChiJoan

Leachim
Posts: 229
Joined: Sun 27 May 2007, 23:04

Re: How about for Dual P3 Slot 1 motherboards?

#15 Post by Leachim »

ChiJoan wrote:... only saw one CPU.
Just download the "cutting edge kernel" sources and configure the kernel to your taste!

I have a E6600 Core 2 Duo cpu on my main PC and enjoy the speedup of compiler runs (make -j 3) everyday! :)

John Doe
Posts: 1681
Joined: Mon 01 Aug 2005, 04:46
Location: Michigan, US

#16 Post by John Doe »

Dougal wrote:As for the problem with T2 and PFS, you need to keep somehting in mind: you are the first person who got up off their arse and actually used PFS! Barry created it and no one has bothered using it...
i used it. it worked great because i downloaded all the packages when T2 still had them available. i pick through them sometimes for libraries.

the only major point i remember is that comm needed to be included in devx. perl build died on it. it was probably removed for size reasons.

i thought Barry mentioned in a post somewhere that he was messing around with the latest T2.
Dougal wrote:I used to go to their repositories, to get packages that match Puppy's libs -- then one day they suddenly disappeared!
i noticed also. wish i had "downloaded all" rather than "required".

althought to be completely honest, i find it's better to download everything one by one and build it up from scratch to understand exactly how it all works.

User avatar
Dougal
Posts: 2502
Joined: Wed 19 Oct 2005, 13:06
Location: Hell more grotesque than any medieval woodcut

#17 Post by Dougal »

John Doe wrote:i used it. it worked great because i downloaded all the packages when T2 still had them available. i pick through them sometimes for libraries.
Did you actually go all the way and create a new Puppy out of it?
I remembered someone mentioned right at the beginning that they'd started (couldn't remember if it was you or SHS), but I assumed it hadn't gone all the way... never saw the new Pup appear.

Barry mentioned thinking of it, but he also thought of using Slack as a base... I think he might need some encouragement to take the plunge and update the filesystem.
What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind

halfmeg
Posts: 14
Joined: Sat 04 Aug 2007, 06:19

#18 Post by halfmeg »

the only major point i remember is that comm needed to be included in devx. perl build died on it. it was probably removed for size reasons.
To John Doe:

I looked at your post about this in the forum. You had edited it thinking there was a dependency which hadn't been downloaded. Do you happen to remember what it was? Reason being, this is where I am currently getting the same message you posted:
!> Locating common programs...
!> I don't know where 'comm' is, and my life depends on it.
!> Go find a public domain implementation or fix your PATH setting!
!> Due to previous errors, no 1-perl.log file!
The above is when Puppy 2.17 is used. When using another Linux, I recieve a Policy.sh error message.

*edit - After installing coreutils pet package the Perl build no longer gives an error

To Barry :

The following source ( 1st line ) is no longer available on the T2 mirrors having been removed for newer versions ( 2nd line) I suppose.

109.300 base man-pages 2.31 / extra/documentation 0
109.300 base man-pages 2.33 / extra/documentation 0

111.800 develop cvs 1.11.19 / base/development 0
111.800 develop cvs 1.11.22 / base/development 0

112.600 xorg xf86-video-nsc 2.7.6.5 / base/x11 0
112.600 xorg xf86-video-nsc 2.8.1 / base/x11 0

115.700 mail exim 4.62 / extra/server MTA JAIL 0
115.700 mail exim 4.63 / extra/server MTA JAIL 0

120.900 gnome2 glib 2.10.2 / extra/development 0
120.900 gnome2 glib 2.10.3 / extra/development 0

123.300 graphic lcms 1.14 / extra/multimedia 0
123.300 graphic lcms 1.15 / extra/multimedia 0

127.400 gnome2 pango 1.12.2 / extra/text 0
127.400 gnome2 pango 1.12.3 / extra/text 0

128.500 network samba 3.0.22 / extra/server NOPARALLEL 0
128.500 network samba 3.0.25b / extra/server NOPARALLEL 0

132.300 database sqlite 3.3.5 / base/library 0
132.300 database sqlite 3.4.1 / base/library 0

158.100 multimedia xvid 1.1.0 / extra/multimedia 0
158.100 multimedia xvidcore 1.1.3 / extra/multimedia 0

191.100 security openssh 4.3p2 / base/system extra/network 0
191.100 security openssh 4.5p1 / base/system extra/network 0

200.000 filesystem unionfs 1.2.0-20060503-0408 / extra/filesystem 0
200.000 filesystem unionfs 1.3 / extra/filesystem 0

I don't think it could find this one anywhere ( T2 mirror or original URL ).

142.700 graphic afpl-ghostscript 8.54 / extra/printing extra/office 0

Sorry to keep on about this but, as I stated before, T2 has no obligation to provide source to me as I haven't obtained any object distribution from them.

Without the specific source tar files which Puppy binaries were created from, no one can recreate or more specifically troubleshoot a particular problem without them.

Without source control, which some Puppy followers seem to think is someone else's responsibility, there is no stable release base.

My original intent was to attempt a 64bit-SMP Puppy. I now think I will be lucky to duplicate the devx_217.sfs contents. If I can't compare what I generate with the devx contents there would be no point in proceeding until they can be replicated to prove the build environment is correct.

Phil

John Doe
Posts: 1681
Joined: Mon 01 Aug 2005, 04:46
Location: Michigan, US

#19 Post by John Doe »

Dougal wrote:Did you actually go all the way and create a new Puppy out of it?
i scammed a couple librarys and apps out of it. had to rebuild the packages into pets manaually. i did manage to back them all up in case picking through them in the future helped.

but since then i've learned that sometimes it's best to go through package by package and build it one's self.
Dougal wrote:Barry mentioned thinking of it, but he also thought of using Slack as a base... I think he might need some encouragement to take the plunge and update the filesystem.
well let me try to encourage.

i made it all the way through back on 2.12 or so.

the biggest stumble i had was the comm thing which i didn't understand the real nature of the problem at the time.

unfortunatly the notes i took where lost somehow. i had planned to post them and was pissed i lost them.

perhaps i should just revisit the exercise and take notes again :-)

let's vote, you all want to have a thread on it? "Latest T2 using puppy 2.17.1"?

sound off.

halfmeg
Posts: 14
Joined: Sat 04 Aug 2007, 06:19

#20 Post by halfmeg »

John Doe wrote:
let's vote, you all want to have a thread on it? "Latest T2 using puppy 2.17.1"?
I'm all for having a new thread concerning the build from scratch process. It will have to delve into using T2 config script. The current one is from September 2006. When I got past the Perl problem ( comm utility missing, fixed by installing PET coreutil package - new BusyBox has this in it BTW ( current BusyBox in 2.17 is version 1.01 most recent release is 1.6.1 ), it tried to compile the downloaded kernel. Even when I excluded linux26 in the packages, it would rebuild the packages file and attempt building it again. I haven't found where the 'saved' packages file is restored from. It looks like it automatically runs configure whenever a file is changed.

I downloaded some of the newer versions of the previously posted missing packages. Some of them are compiling, others have some type of prefix error. Other packages are giving odd messages as well.

Phil

Post Reply