Linux distro just for DC deving?
-
- DCEmu Freak
- Posts: 69
- https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
- Joined: Wed Oct 17, 2001 7:44 pm
- Has thanked: 0
- Been thanked: 0
Linux distro just for DC deving?
Could someone please make a Linux distro just for DC deving with all the cross-compilers and libraries setup already?
Even better yet, make it to where it boots from CD (mounting Windows partitions for saving of course).
This would help people like me who want to dev, but don't want to spend the time setting everything up under Cygwin or moving partitions around for Linux then building cross-compiliers, etc.
Even better yet, make it to where it boots from CD (mounting Windows partitions for saving of course).
This would help people like me who want to dev, but don't want to spend the time setting everything up under Cygwin or moving partitions around for Linux then building cross-compiliers, etc.
-
- Damn Dirty Ape
- Posts: 5031
- Joined: Thu Nov 07, 2002 11:11 pm
- Location: Saugerties, NY
- Has thanked: 0
- Been thanked: 0
Sorry to bump a 2-year old topic, but I was doing a search looking at the feasability of this very idea.
Specifically, I was thinking about starting with FeatherLinux or some other Knoppix remaster which is already reasonably small, stripping out all the stuff we don't need like media players and stuff, replacing the window manager with IceWM (just because I happen to like it, and after a quick perusal of some online docs it looks fairly easy to make themes that Windows/Mac users will find familiar) and adding the tools for DC development. The other idea I had was to not specifically include the SH4/ARM toolchain or KOS, but include a build script, so the user would get the newest KOS, and they could boot from CD or a USB device (or a boot floppy and have Linux on a Zip drive or whatever - I've currently got FeatherLinux running on a Zip250 drive if I boot from a floppy, so that much will certainly work), and then their development tools would be at /dev/sda1/wherever if they want to save on a Zip disc or whatever, or they might be at /dev/hda1/dcdevtools/wherever if they want to save on a (non-NTFS) hard drive partition, which might have Windows or whatever. I thought this might be easier than using Cygwin, since I've seen people having trouble with knowing what exactly to download in order to get everything set up, and such a setup takes up a lot of space on your hard drive. Using a compressed filesystem like Knoppix uses will save on disc space, plus we don't need all that much to get a development environment set up - just a basic system with compilers and whatnot. I also like the idea of having your own Devkit that you can carry around in your pocket, so it's available to you wherever you are even if you don't have your own PC with you.
... So, can anyone comment on the feasability of such a project? I'm thinking it might be a good learning experience setting it up if it's likely to work.
Specifically, I was thinking about starting with FeatherLinux or some other Knoppix remaster which is already reasonably small, stripping out all the stuff we don't need like media players and stuff, replacing the window manager with IceWM (just because I happen to like it, and after a quick perusal of some online docs it looks fairly easy to make themes that Windows/Mac users will find familiar) and adding the tools for DC development. The other idea I had was to not specifically include the SH4/ARM toolchain or KOS, but include a build script, so the user would get the newest KOS, and they could boot from CD or a USB device (or a boot floppy and have Linux on a Zip drive or whatever - I've currently got FeatherLinux running on a Zip250 drive if I boot from a floppy, so that much will certainly work), and then their development tools would be at /dev/sda1/wherever if they want to save on a Zip disc or whatever, or they might be at /dev/hda1/dcdevtools/wherever if they want to save on a (non-NTFS) hard drive partition, which might have Windows or whatever. I thought this might be easier than using Cygwin, since I've seen people having trouble with knowing what exactly to download in order to get everything set up, and such a setup takes up a lot of space on your hard drive. Using a compressed filesystem like Knoppix uses will save on disc space, plus we don't need all that much to get a development environment set up - just a basic system with compilers and whatnot. I also like the idea of having your own Devkit that you can carry around in your pocket, so it's available to you wherever you are even if you don't have your own PC with you.
... So, can anyone comment on the feasability of such a project? I'm thinking it might be a good learning experience setting it up if it's likely to work.
- greay
- DCEmu Ultra Poster
- Posts: 1938
- Joined: Wed Jan 21, 2004 10:59 am
- Location: 24 hours from Tulsa
- Has thanked: 0
- Been thanked: 0
- Contact:
Feasibility? Entirely. This is what linux is for. This is why there are different distros.OneThirty8 wrote:The other idea I had was to not specifically include the SH4/ARM toolchain or KOS, but include a build script,
... So, can anyone comment on the feasability of such a project? I'm thinking it might be a good learning experience setting it up if it's likely to work.
It's definitely a good idea, but I would suggest having the option to either use a pre-built toolchain/KOS or use a build script to build the latest version. 'cause honestly the build script idea wd require setting up the comp with an internet connection, which is a bit of extra work that goes against your idea of having a "devkit in your pocket"
oh, come to think of it... The build-script for the toolchain isn't a good idea at all. I'm using gcc 3.3.2 & newlib 1.9.0 and, well... The buildscript I tried didn't work. Because the build process for gcc (I think newlib was fine) changed, and the script was expecting an earlier version.
I'm a lone wolf looking for trouble.
-
- DC Developer
- Posts: 9951
- Joined: Sun Dec 30, 2001 9:02 am
- Has thanked: 0
- Been thanked: 1 time
It certainly isn't a bad idea.
The bare minimum would be a system that boots, and has the appropriate compilers on there. If you're going to do that, you may as well provide a pre-built Cygwin or MinGW system.
I'd say we would definitely need native compilers (at the very least, KOS requires them), X11, a decent WM, a web browser (probably Firefox), a PPP dialler for modem connections, PPPoE/PPPoA setup program for ADSL modems, and probably an IDE. Otherwise, it's not going to be any easier to use than a raw Cygwin on MinGW setup.
For Windows 95 and 98, it'd be pretty easy to run from a hard drive - just add a shortcut on the desktop that exits to DOS mode, and starts Linux using loadlin. Windows ME would require a boot disk. It is possible to get Windows 2000 or XP to boot a Linux system, but I've never tried it with a filesystem image instead of a Linux partition. A bootdisk would still work fine in that case.
After it's running, we could use the Captive NTFS driver to get read/write access to an NTFS filesystem. It works by loading the NTFS driver from a Windows XP system, and running it inside a simulated WinNT kernel as a user program. It then uses LUFS (a filesystem driver that lets you run filesystem drivers from user programs) to mount the NTFS drive as a normal filesystem.
Might be interesting. I was mucking around earlier with getting a basic Slackware installation booting from a USB stick. When I say "basic", I really mean it - I had about half the packages from the a series installed, I was using my own init script (not using init at all, actually), which detected PCI and USB hardware, set up a simple fstab (mostly for removable storage, not the hard drives), created mount points, and attempted to get the network up. It came to 50MB uncompressed...
The bare minimum would be a system that boots, and has the appropriate compilers on there. If you're going to do that, you may as well provide a pre-built Cygwin or MinGW system.
I'd say we would definitely need native compilers (at the very least, KOS requires them), X11, a decent WM, a web browser (probably Firefox), a PPP dialler for modem connections, PPPoE/PPPoA setup program for ADSL modems, and probably an IDE. Otherwise, it's not going to be any easier to use than a raw Cygwin on MinGW setup.
For Windows 95 and 98, it'd be pretty easy to run from a hard drive - just add a shortcut on the desktop that exits to DOS mode, and starts Linux using loadlin. Windows ME would require a boot disk. It is possible to get Windows 2000 or XP to boot a Linux system, but I've never tried it with a filesystem image instead of a Linux partition. A bootdisk would still work fine in that case.
After it's running, we could use the Captive NTFS driver to get read/write access to an NTFS filesystem. It works by loading the NTFS driver from a Windows XP system, and running it inside a simulated WinNT kernel as a user program. It then uses LUFS (a filesystem driver that lets you run filesystem drivers from user programs) to mount the NTFS drive as a normal filesystem.
Might be interesting. I was mucking around earlier with getting a basic Slackware installation booting from a USB stick. When I say "basic", I really mean it - I had about half the packages from the a series installed, I was using my own init script (not using init at all, actually), which detected PCI and USB hardware, set up a simple fstab (mostly for removable storage, not the hard drives), created mount points, and attempted to get the network up. It came to 50MB uncompressed...
-
- Damn Dirty Ape
- Posts: 5031
- Joined: Thu Nov 07, 2002 11:11 pm
- Location: Saugerties, NY
- Has thanked: 0
- Been thanked: 0
-
- DC Developer
- Posts: 9951
- Joined: Sun Dec 30, 2001 9:02 am
- Has thanked: 0
- Been thanked: 1 time
My toolchains are 21MB for sh-elf, and 11MB for arm-elf. I've not tried to strip either of them down much as I could. There are still a lot of libraries and other things that aren't used (like GCC's stdlibc++, which doesn't work in KOS anyway, and a load of GCC things that aren't used anywhere either), so both could probably be cut down a lot. Compressed (as a gzipped tar) they come to 13MB now, and could be much smaller.
KOS is another matter. A full precompiled KOS 1.2.0 takes up 114MB on my system, but that's with all the source code, temporary files, and all that stuff still included. Just the required files would probably around 3MB compressed (that's how big the precompiled KOS on my site is, but again that could be smaller).
Toolchain: 16MB
Source code: 30MB?
KOS is another matter. A full precompiled KOS 1.2.0 takes up 114MB on my system, but that's with all the source code, temporary files, and all that stuff still included. Just the required files would probably around 3MB compressed (that's how big the precompiled KOS on my site is, but again that could be smaller).
Toolchain: 16MB
Source code: 30MB?
-
- Damn Dirty Ape
- Posts: 5031
- Joined: Thu Nov 07, 2002 11:11 pm
- Location: Saugerties, NY
- Has thanked: 0
- Been thanked: 0
I definitely want more than something that boots - X11 is a must, as is a decent Window manager. I'm not sure what IDE to include, but FeatherLinux already has Dillo and Firefox so there's already a web browser. It's also got some PPP tools.BlackAura wrote:It certainly isn't a bad idea.
The bare minimum would be a system that boots, and has the appropriate compilers on there. If you're going to do that, you may as well provide a pre-built Cygwin or MinGW system.
I'd say we would definitely need native compilers (at the very least, KOS requires them), X11, a decent WM, a web browser (probably Firefox), a PPP dialler for modem connections, PPPoE/PPPoA setup program for ADSL modems, and probably an IDE. Otherwise, it's not going to be any easier to use than a raw Cygwin on MinGW setup.
For Windows 95 and 98, it'd be pretty easy to run from a hard drive - just add a shortcut on the desktop that exits to DOS mode, and starts Linux using loadlin. Windows ME would require a boot disk. It is possible to get Windows 2000 or XP to boot a Linux system, but I've never tried it with a filesystem image instead of a Linux partition. A bootdisk would still work fine in that case.
After it's running, we could use the Captive NTFS driver to get read/write access to an NTFS filesystem. It works by loading the NTFS driver from a Windows XP system, and running it inside a simulated WinNT kernel as a user program. It then uses LUFS (a filesystem driver that lets you run filesystem drivers from user programs) to mount the NTFS drive as a normal filesystem.
Might be interesting. I was mucking around earlier with getting a basic Slackware installation booting from a USB stick. When I say "basic", I really mean it - I had about half the packages from the a series installed, I was using my own init script (not using init at all, actually), which detected PCI and USB hardware, set up a simple fstab (mostly for removable storage, not the hard drives), created mount points, and attempted to get the network up. It came to 50MB uncompressed...
I wasn't aware that you could write to an NTFS partition from Linux. Well, I knew you could do it, but everything I've read included the line 'try it on some unimportant data first,' so I thought it was experimental.
Anyway, it's good to know others think this is a good idea.
-
- DC Developer
- Posts: 9951
- Joined: Sun Dec 30, 2001 9:02 am
- Has thanked: 0
- Been thanked: 1 time
It is - that's talking about the native NTFS drivers included in the 2.4 kernel. They could write to drives formatted with the WinNT 4 version of NTFS, but had a tendancy to screw the drive up. In order to get Windows to even read the drive, you needed to run a repair program on it.Well, I knew you could do it, but everything I've read included the line 'try it on some unimportant data first,' so I thought it was experimental.
The drivers in the 2.6 kernel are safe, but only support overwriting files. You can't modify the filesystem (so no adding, moving, renaming, modifying the size of files), but you can modify the contents of the files, as long as you don't change the size of the file. So you can use swapfiles or loopback filesystem images easily enough.
The Captive NTFS driver is just as safe as the one in Windows XP, because it is the one from Windows XP. It requires a copy on WinXP on the system to work, because it needs to copy the NTFS driver, but it's not likely that you'll have an NTFS drive without Windows on it somewhere.
I'll have to take a look at FeatherLinux. Something like the way Morphix works might be good too - you have the base system, and everything else is implemented as modules. The modules are merged with the base filesystem at bootup. For example, you could have GCC 3.0.4 as one module, and KOS 1.2.0 as another. Then if someone wanted to use GCC 3.4 and KOS 1.3.x instead, they could pull the GCC 3.0 and KOS 1.2 modules out, and replace them easily, without needed to remaster the whole system.
-
- DCEmu Freak
- Posts: 71
- Joined: Thu Feb 20, 2003 11:46 am
- Has thanked: 1 time
- Been thanked: 0
- Contact:
Very funny, I was just thinking on this some days ago. My dev PC is a Linux box, and I was thinking in building a setup like that. I even started to build a knoppix clone...
But I forgot it because I thought no one would care...
If there's enough interest I could re-start the project, what do you think?
But I forgot it because I thought no one would care...
If there's enough interest I could re-start the project, what do you think?
-
- Insane DCEmu
- Posts: 127
- Joined: Sat May 31, 2003 8:20 pm
- Location: That place, down the street
- Has thanked: 0
- Been thanked: 0
- Contact:
it would be real easy to make a knoppix clone with this stuff. if someone gave me the build scripts or just the most recent versions of kos, and gcc compatible with dreamcast, I could have this thing going in a week. I would be happy to do so to, I just fried my dev environment and would be happy to do so.
-------------------------------------------------
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
-
- Damn Dirty Ape
- Posts: 5031
- Joined: Thu Nov 07, 2002 11:11 pm
- Location: Saugerties, NY
- Has thanked: 0
- Been thanked: 0
I personally wouldn't start with Knoppix. I'd start with the Lite version of Morphix, FeatherLinux, or DamnSmall Linux because those are already smaller, and it will be less work to strip out all the extra stuff we don't need. Basically, I think all we need is your base system, plus X11 and a decent Window Manager (fluxbox will do, IceWM or something might be better since you can make it look like Windows/OSX so noobs will have an easier time adapting to Linux), plus internet capabilities, and of course the needed compilers and whatnot.mogorman wrote:it would be real easy to make a knoppix clone with this stuff. if someone gave me the build scripts or just the most recent versions of kos, and gcc compatible with dreamcast, I could have this thing going in a week. I would be happy to do so to, I just fried my dev environment and would be happy to do so.
@BlackAura, I haven't looked too much at Morphix - My Dad gave me his Morphix CD's because he didn't like them as well as the Knoppix CD I burned for him, but the way FeatherLinux works sounds similar to how you described Morphix. There's some stuff that's there, some stuff that's 'there' but needs to be installed, and some stuff that's not there but can be downloaded and installed from a simple menu in fluxbox. It uses Debian packages as far as I can tell, so it should be easy enough to make Debian packages for, let's say GCC, a precompile KOS 1.2.0 with SDL fixed (the joystick stuff primarily), and a recent snapshot of KOS 1.3.0 precompiled.
On FeatherLinux, when you've installed whatever you want installed, you just save your configuration to a USB drive/hard drive before you quit, and when you boot up next time you just tell it to restore your configuration and everything is how you left it.
-
- Insane DCEmu
- Posts: 127
- Joined: Sat May 31, 2003 8:20 pm
- Location: That place, down the street
- Has thanked: 0
- Been thanked: 0
- Contact:
okay, I agree with you so I think the easiest way to do this is make a morphix module, and I am happy and have learned how, but what are all the current files for building the tool chain. thanks matt
-------------------------------------------------
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
-
- Dumb
- Posts: 1998
- Joined: Mon Dec 08, 2003 8:36 pm
- Location: Because My Heart is in O-H-I-OOOO
- Has thanked: 0
- Been thanked: 0
- Contact:
Perhaps this type of thing would also be good to add. http://www.dcemulation.org/phpBB/viewtopic.php?t=46182
Just the server part, I mean.
Just the server part, I mean.
Smiley wrote:I was bored and like to hear myself talk, that's all....
-
- Insane DCEmu
- Posts: 127
- Joined: Sat May 31, 2003 8:20 pm
- Location: That place, down the street
- Has thanked: 0
- Been thanked: 0
- Contact:
hmm i wouldnt know how to do that. but I could take a crack at it, but what are the most recent tools dc suports and any other things people would want in a dreamcast morphix module that wouldnt be in another one.
-------------------------------------------------
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
-
- Damn Dirty Ape
- Posts: 5031
- Joined: Thu Nov 07, 2002 11:11 pm
- Location: Saugerties, NY
- Has thanked: 0
- Been thanked: 0
@mogorman
For DC, I'd imagine you could just take one of the build scripts that'll download the desired versions of GCC, binutils, newlib, and KOS. BlackAura's build script uses GCC 3.0.4, binutils 2.11.2, newlib 1.10.0, and KOS 1.2.0. Might want to also include a recent snapshot of KOS 1.3.X.
For remastering KNOPPIX, this page at knoppix.net contains a lot of useful information.
@FLCL|ETR, I'm not sure a server is really needed, but if enough people are interested then it's a possibility. Depending on what we start with, there's probably something already there that will work fine.
For DC, I'd imagine you could just take one of the build scripts that'll download the desired versions of GCC, binutils, newlib, and KOS. BlackAura's build script uses GCC 3.0.4, binutils 2.11.2, newlib 1.10.0, and KOS 1.2.0. Might want to also include a recent snapshot of KOS 1.3.X.
For remastering KNOPPIX, this page at knoppix.net contains a lot of useful information.
@FLCL|ETR, I'm not sure a server is really needed, but if enough people are interested then it's a possibility. Depending on what we start with, there's probably something already there that will work fine.
-
- DC Developer
- Posts: 9951
- Joined: Sun Dec 30, 2001 9:02 am
- Has thanked: 0
- Been thanked: 1 time
When I've finished cleaning my toolchain up a bit, I'll just upload it somewhere. It was compiled without newlib (it only needs the headers anyway), and it's been trimmed down a lot. It all still works, and it's more than enough to compile KOS (any recent version) from source.For DC, I'd imagine you could just take one of the build scripts that'll download the desired versions of GCC, binutils, newlib, and KOS. BlackAura's build script uses GCC 3.0.4, binutils 2.11.2, newlib 1.10.0, and KOS 1.2.0. Might want to also include a recent snapshot of KOS 1.3.X.
The main thing that needs shrinking is KOS. I have KOS 1.2.0 (although I should upgrade that to a more recent SVN version of the 1.2.x tree - there are a few important changes in there), and KOS 1.3.x 133/incr around here at the moment, and they both work just fine.
it'd be a good idea, if you plan to do something like this, to add KOS, already precompiled, into a tarball to reduce size... or add an RPM manager to the linux distro and make an RPM (which seem to have really good compression abilities) or some other archive. 7zip make really small archives, but almost no archive utilities support it for any OS... just a suggestion to bring down the size a little... you could also just put the source in the distro and give step-by-step instructions on building it. Hey, there's already a linux distro for PS2 devving (black rhino) this should be no problem if you know what your doing. Also, if your gonna try, you should remove all the games/heavy programs/etc. that arent necessary, and just make a pure devbox. just some suggestions.
-
- Insane DCEmu
- Posts: 127
- Joined: Sat May 31, 2003 8:20 pm
- Location: That place, down the street
- Has thanked: 0
- Been thanked: 0
- Contact:
so i have built tool chain. I have kos 1.2.0 installed, and I have scramble, and dc-load installed in a morphix module im making what else do people want/ need in linux dreamcast developer environment.
-------------------------------------------------
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass
some say the glass is half full
some say the glass is half empty
I say thank god they gave me a glass