gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS Misc > devkitPro and cygwin

#131907 - simonjhall - Thu Jun 21, 2007 9:26 am

wintermute wrote:
Cygwin is not now nor will it ever be a supported devkitPro platform. There have been considerable problems with that in the past
I'm a bit off-topic here, but what ARE the problems with dkp and cygwin? I've only ever used Cygwin with it...although I don't use any of the included makefiles.
_________________
Big thanks to everyone who donated for Quake2

#131908 - kusma - Thu Jun 21, 2007 9:35 am

I was about to ask the same question...

#131920 - wintermute - Thu Jun 21, 2007 11:57 am

At one point, deep in the mists of time, I used a set of cygwin tools to provide bash and asociated linux style tools. This caused incredible problems with other cygwin based tools, especially with official toolchains that supplied their own version of the cygwin environment. Using msys instead was the best solution at the time since it avoided all the conflicts I had been seeing.

There have been other problems since running the devkitPro tools within a cygwin environment with segfaults for no readily apparent reason. I was never able to determine what particular alignment of the stars was causing this but removing cygwin from the path *always* fixed it.

One of the things that makes devkitPro toolchains faster than their cygwin based equivalents is that they are win32 native and not reliant on external dlls which perform path translation amongst other things. This also means that they will not recognise either cygwin or msys mount points which can lead to difficulties when using cygwin make. I haven't tried the devkitPro build system within cygwin but I suspect it will run foul of the mount point issue.

Something else to consider here is that not all devkitPro users have the same competence level. In fact a very small minority actually understand makefiles or a lot of the underlying architechture which makes things relatively easy for the complete novice.

Programmers with a lot of experience may well prefer their own particular system and that's a perfectly valid approach. On the other hand, the build system I created has a few features which sometimes even seasoned programmers gloss over. The auto dependency generation in particular is something that many people have problems getting to work right in their own systems. Over the years I've seen quite a few projects where "bugs" were "fixed" by performing a clean build.

Whether or not you agree with the approach I've taken you must admit that homebrew is a *lot* easier than it once was.

I may get anal on occasion about the use of the toolchains but it's only because I've seen newbies tying themselves in knots trying to follow the advice of seasoned "professionals" :P
_________________
devkitPro - professional toolchains at amateur prices
devkitPro IRC support
Personal Blog

#131923 - kusma - Thu Jun 21, 2007 12:25 pm

I have a msys and a cygwin setup, both individually set up (ie they don't have each other in the path - aprart from that, the setups are more or less identical), and I've never had any issues with it apart from that for some reason, apart from this one: The dependancy-files generated are for some reason incompatible with cygwin's make:
Quote:
file.d:1: *** multiple target patterns. Stop.


possible devkitPro conflicts removed by mod

#131924 - wintermute - Thu Jun 21, 2007 12:38 pm

Please don't do that - there are reasons why the recommended course of action is to stick with the installer provided toolset.

I understand that you like your own tools and you may even be capable of fixing problems that you find. It's not you that ends up having to fix the mess when inexperienced users try it.

The dependencies generated are incompatible with cygwin's make because devkitARM is not a cygwin toolchain.

Ultimately, while I'm interested in such issues, I have to take the route which leads to fewer support requests.
_________________
devkitPro - professional toolchains at amateur prices
devkitPro IRC support
Personal Blog

#131927 - kusma - Thu Jun 21, 2007 12:46 pm

In some cases I depend on 3. party tools only available for Cygwin. This is a real issue I'm currently having, and it can be gotten around quite easily (as I showed).

I must say, wow, censoring my post here is something I consider really bizarre behavior. I wasn't encouraging people to use that hack, I just mentioned how to get around the problem. Inexperienced users wouldn't be able to take my comment and implement it into a build-system anyway. I'm a bit concerned if you're trying to rule the community a bit too hard here.

#131933 - wintermute - Thu Jun 21, 2007 1:33 pm

Would you like to take over devkitPro support for a while and see just how much people manage to destroy things while attempting to "fix" their problems using, in most cases, totally unrelated code fragments? Still, I guess it wouldn't be tech support without the odd horror story and a couple of "twelve o'clock flashers" breaking things :P

It's great that you can use devkitARM under cygwin and I have a great deal of respect for someone who obviously knows their tools as well as you do.

If there's one thing I've learned from creating devkitPro it's that the majority of people out there aren't "just like me". People like to follow "steps", they like to be told what to do and if someone with apparent knowledge and authority tells them they can fix a particular issue by doing a particular thing they will do it. They'll do it even if they don't have that problem and even in some cases where they aren't even using the same software.

Anyway, I'm splitting this off now, I just noticed that I missed jandujar's reply due to the topic drift, oops.

I suppose the alternative approach would have been to split these posts off sooner and hope that your sedfu got buried before someone noticed it. It's always an incredibly difficult decision to make and not one I take lightly.
_________________
devkitPro - professional toolchains at amateur prices
devkitPro IRC support
Personal Blog

#131940 - tepples - Thu Jun 21, 2007 1:53 pm

kusma wrote:
In some cases I depend on 3. party tools only available for Cygwin.

Cygwin's libc is under the GNU GPL, with the so-called "viral" provision in full effect. Any third-party tool available for Cygwin is going to be available under the GPL for you to port to MSYS. Which tools are you talking about so that I can get an idea of how much effort they would be to port?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#131942 - kusma - Thu Jun 21, 2007 2:05 pm

tepples wrote:
kusma wrote:
In some cases I depend on 3. party tools only available for Cygwin.

Cygwin's libc is under the GNU GPL, with the so-called "viral" provision in full effect. Any third-party tool available for Cygwin is going to be available under the GPL for you to port to MSYS. Which tools are you talking about so that I can get an idea of how much effort they would be to port?

Actually, the tools I'm talking about is already GPL. In fact, it's another GCC-build for some other piece of hardware - I just never managed to make MinGW builds of GCC myself.

Anyway, I don't really find your point to be generally valid, as porting can be a lot of work. Cygwin provides an easy way of porting from unix to something that can be run under windows, and imo that's a good thing.

#131944 - kusma - Thu Jun 21, 2007 2:11 pm

wintermute: I'm just not sure if the potential (and I'd like to state that this seems very unlikely to me, but I may be wrong) extra support-burden for you is a valid reason for censorship, especially when this is NOT a devkitPro support-forum (even though it might seem like it some at times). You are free to have and express personal views on what's good and bad programming practice, and what ease and support your projects, but IMO it stops there.

#131947 - Lynx - Thu Jun 21, 2007 3:10 pm

Quote:
I must say, wow, censoring my post here is something I consider really bizarre behavior.


Much agreed. Maybe add a huge warning that it will mess up a system or something, but to just delete it? Ahh well.
_________________
NDS Homebrew Roms & Reviews

#131962 - simonjhall - Thu Jun 21, 2007 6:49 pm

Wo-ho, didn't expect to see this - I didn't realise that cygwin + dkp was such a big issue!
Just to chime in again with my experience of it,
- the makefiles never work for me under cygwin, but I always write my own anyway
- the tools *rarely* segfault (only gdb for me, when I do certain things)
- the path mapping (ie /cygdrive/c/ versus msys' /c/) is the only major problem, but you get used to it

Tbh I don't really know why I use cygwin...but I've used it too long to bother changing to msys!
_________________
Big thanks to everyone who donated for Quake2

#131967 - masscat - Thu Jun 21, 2007 7:45 pm

simonjhall wrote:
- the tools *rarely* segfault (only gdb for me, when I do certain things)

This may be GDB related as I have had GDB seg fault and not step correctly when talking to on hardware and desmume GDB stub. As mentioned elsewhere on these forums, GDB version 6.6 behaves much better, i.e. I have not seen it crash.
This is running under Linux by the way.