Domain: mingw.org
Stories and comments across the archive that link to mingw.org.
Comments · 141
-
Re: This would be better :
GNU for Windows exists too.
You don't have to buy into the ecosystem of any given platform. -
Re:Windows
Actually, as a Windows user I tend to go out and install the msys version of bash on any system I'm going to be doing serious work on. A lot of people prefer Cygwin's bash, but the licensing on msys is nicer, and all you really lose is some POSIX stuff that isn't all that important unless you are trying to perform a Unix port of something. Most of the official gcc compiler installs for Windows use msys/mingwin.
If you don't mind learning a bunch of stuff that's only valid on today's flavor of Windows, I understand Microsoft's powershell is really nice too. Be warned that some sysadmins restrict access to it though. We've run into issues with that with clients and vendors.
try msys2 ORDERS of magnitude better bundle
-
Re:Windows
Actually, as a Windows user I tend to go out and install the msys version of bash on any system I'm going to be doing serious work on. A lot of people prefer Cygwin's bash, but the licensing on msys is nicer, and all you really lose is some POSIX stuff that isn't all that important unless you are trying to perform a Unix port of something. Most of the official gcc compiler installs for Windows use msys/mingwin.
If you don't mind learning a bunch of stuff that's only valid on today's flavor of Windows, I understand Microsoft's powershell is really nice too. Be warned that some sysadmins restrict access to it though. We've run into issues with that with clients and vendors.
-
Re:Another piece of software to uninstall
What's the advantage of distributing binaries other than binaries of GCC?
Because not everyone wants to run gentoo or LFS (linux from scratch).
-
Re:Another piece of software to uninstall
What's the advantage of distributing binaries other than binaries of GCC?
-
Re:Make files and emacs
To use these tools on Windows you need to get Cygwin to make it work more smoothly
Unless you need fully-emulated Unix on your PC (clear down to Unix signals, fork(), etc.), Cygwin is really overkill. To make matters worse some of the toolchain renders code built with it GPL unless you pay Red Hat for a looser license.
Any Windows developer who doesn't need full Unix emulation should probably be using MingGW.
-
Why not develop for a tablet on a tablet?
want to develop a desktop application for Windows? Get a Windows licence from Microsoft
But not necessarily a Visual Studio license or an "unknown sources" license that must be renewed annually. Even if Visual Studio Express didn't exist, there's nothing in Windows to stop people from porting the GNU Compiler Collection to Windows. On the other hand, iOS, Windows Phone 7, and game console operating systems employ cryptographic rent-seeking mechanisms to prevent third parties from making fully functional toolchains.
want to develop for the iPhone? Buy a software/hardware combo from Apple, that's called a Mac.
There's no reason except for cryptographic rent-seeking that one shouldn't be able to develop for an iPhone or iPad on a docked iPhone or iPad. The existence of AIDE for Android demonstrates this.
-
Re:What packages are so slow to update?
If all you want is a decently modern bash and unix userland on windows, you might want to investigate mingw/msys. It still uses a translation system underneath but msys is lighter than cygwin and the toolchain produces are 100% native and link against MSVCRT.
You would enjoy tremendously better performance. At least I know I did. On cygwin bash takes approximately 6 whole seconds to parse my
.bashrc, I kid you not. With msys bash, it is instant. -
Re:Autotools do not need a book
The other compiler is MinGW32 - there are others, like Borland C, and ICC...
I think CMake supports them all.
There are still piles of projects running on Windows. Right now, I'm on Windows (work machine), with KDE 4.4, Inkscape, Gimp, VTK and ITK among other things installed. Remember, lots of devs work on Windows, and quite a large body of users too. Not to mention other environments, like embedded systems which might or might not be able to work with full autotools...
-
Re:Pfff...
You are missing the point. Linux kernel updates don't demand more from the hardware per se, rather they support a wider range (older + newer = more). OTOH things like Windows 7 and GNOME demand more from the hardware, and hence they support a narrower range (only new = less).
Sure, there will be security updates. But a fully patched XP installation with a non-dumb human overseer is secure enough. My development machine is a macmini dual booting OS X and XP. It is fast. It never goes down (atleast the OS X part never does
:).Things like mingw, focus follows mouse, zune xp theme, consolas etc will make a *nix fella feel almost right at home.
-
Re:Misleading summary
Clearly some people think a complete, Open Source, Windows-compatible OS has some real value.
I use ReactOS to test some MinGW - based programs I write for windows.
I find the EULA for Windows unacceptable.
But I still want my software to run on it. -
Surprised no one has mentioned MSYS
My favorite Unix environment for Windows (that, yes, has Bash) is MSYS, which is a lightweight 3 megabyte one-click install of the essentials for a Unix system. No, it doesn't have Perl. Nor Python. But, it does have Awk (via Gawk), which can do the essentials.
-
Programmers Notepad 2
for windows:
Programmers Notepad 2
http://www.pnotepad.org/and MinGw
http://www.mingw.org/PN2 has tons of features, add your own code clips, tools, etc. It seems to be actively developed. Supports all languages with code completes and syntax highlighting. Its very nice.
Its also included in winARM toolkit as well if you want to dev arm7/9 embedded systems.
-
Re:Eclipse and Netbeans
I also use Dev-C++ for my windows development, I find the interface to be superb in not getting in my way, while not being dog-ugly or slow.
Conversely, I was searching for an alternative for linux (yes, I'll learn vi/vim some day, just not now), and what I found was Geany. It starts up at the flick of a finger and manages to look a lot like Dev-C++ (perhaps more polished even). The only thing I dislike about it is its (intentional) weak project support, but that could conceivably be fixed with the nice plugin system. So, Geany is very lightweight and supports quite a lot of languages, it has its default settings such that if you have the necessary compilers installed (which is basically mostly true on most linux systems, or can be done with one line at the shell), it'll work out of the box. The same for python, perl, etc.
Then I noticed that it also has a windows port, that comes with its own GTK+ runtime (all nicely contained in Geany's folder, and nicely uninstalled if you want), I tried it and while the first startup is not as fast (due to the GTK+ libraries needing to be loaded), all the rest is just as snappy. Ofcourse the windows version needs a little more help to get started, but not _that_ much more. All you basically have to do is install MingW and set your $PATH to search MingW/bin.
So basically the only problem with Geany that still remains (for me), is that it doesn't really support projects like Dev-C++ did, so for now you basically have to make your own makefiles. This could also be viewed in a positive light ofcourse, as learning about makefiles will prove to be a good skill if you want to do some open source contribution. But I'm sure it could get tedious as well (haven't done many large projects lately), so someone developing a plugin would be really nice, and probably not too hard as well.
Well, I've been ranting and promoting long enough now, time for Geany to promote itself, give it a spin (it's free, the only cost is your time ;) ). -
WINE Console Apps FTW
And there's another neat thing I've been doing with WINE lately - run Win32 CLI tools transparently from Linux shell.
This is particularly handy for cross-building, as you can download Visual C++ Express Edition and get access to the x86, amd64, ia64 and I think even CLR toolchains. Eclipse makes a nice IDE for this, you can code, build and test for Win32 without Windows. (An all-free way to cross-build is of course MinGW.)
Any day I don't boot Windows is a good day!
-
The Borland Museum
The Borland Museum has the old Turbo series of Turbo Pascal, Turbo C, and Turbo C++ for MS-DOS downloadable for free.
Turbo Pascal and Delphi got replaced by Free Pascal, and Turbo C++ got replaced with GNU C++ and MinGW C++ for Windows which are open source alternatives to them. Which I think is why the Borland Museum got opened and why the command line version of Borland C++ was given away for free.
While people were waiting for the Borland Museum to release Delphi 1.0 the Lazarus Project was developed based on Free Pascal to replace Delphi.
-
MSYS
You might want to try MSYS. It provides a shell, a handful of common Unix commands, and it translates path names so you can type "/c/Program Files/" instead of "C:\Program Files\". It allows me to cry a lot less when I have to use Windows.
-
Re:Lockout chip business modelthere's little advantage to using a PC over a console for games. Other than the fact that PC users can download and run games released as free software, freeware, or shareware, produced by any developer with a copy of Windows and a copy of GCC? Consoles such as Wii are restricted to developers that are established businesses with actual office space (see warioworld.com for details), and the game cannot include copylefted free software because the console makers outright refuse to allow the developers to provide Installation Information. Microsofts freely downloadable dev tools and the freeware games / demo games on XBL prove you wrong. Sony are planning similar with the PS3 and no doubt Nintendo will follow suit.
-
Lockout chip business modelthere's little advantage to using a PC over a console for games. Other than the fact that PC users can download and run games released as free software, freeware, or shareware, produced by any developer with a copy of Windows and a copy of GCC? Consoles such as Wii are restricted to developers that are established businesses with actual office space (see warioworld.com for details), and the game cannot include copylefted free software because the console makers outright refuse to allow the developers to provide Installation Information.
-
Re:Software not available elsewhere
I use linux because the software I use: emacs, LaTeX, gcc, is unavailable on Windows, at least without hacking or using some emulator that never quite works right
- "GNU Emacs for Win32."
- "MiKTeX is an up-to-date TeX implementation for the Windows operating system."
- "MinGW: A collection of freely available and freely distributable Windows specific header files and import libraries combined with GNU toolsets that allow one to produce native Windows programs that do not rely on any 3rd-party C runtime DLLs."
also, wow, file management is a pain in the arse using a mouse
You don't have to use the mouse. You can have the old-school DOS-style goodness in form of Norton Commander clones such as Far (they are much more powerful than the original NC was, of course). Or you can have PowerShell, which is way more powerful than any Unix shell out there.how do people manage without grep, sed and awk?
"GnuWin32 provides ports of tools with a GNU or similar open source license, to MS-Windows (Microsoft Windows 95 / 98 / ME / NT / 2000 / XP / 2003 / Vista / 2008)".Anything else you wanted?
-
Re:Software not available elsewhere
Google is hard:
Emacs for Win32: (http://www.google.com/search?q=emacs+win32)
Faq: http://www.gnu.org/software/emacs/windows/ntemacs.html
Download: ftp://gatekeeper.dec.com/pub/GNU/windows/emacs/ (The faq contains other links that may be faster for you)
LaTex for Win32: (http://www.google.com/search?q=latex+win32)
Faq/Download info: http://www.comp.lancs.ac.uk/~fittond/win32latex/win32latex.html
gcc for Win32 (MinGW for this particular answer, there is cygwin and such as well): (http://www.google.com/search?q=gcc+win32)
Info: http://www.mingw.org/
command line utils for Win32: (http://www.google.com/search?q=unix+utils+win32)
http://unxutils.sourceforge.net/
Includes:
bc, bison, bzip2, diffutils, fileutils, findutils, flex, gawk, grep, gsar110, gzip, indent, jwhois, less, m4, make, patch, recode, rman, sed, shellutils, tar, textutils, unrar, wget, which
To answer your question, my windows machine does just fine when I want to use the unix utilities that I love, not real sure why yours can't, other than googling is hard.
For the record, all of the above web pages were basically the first result from google, I guess I'm feeling Lucky today. -
Re:why not?
Of course, maybe it's all a stealth advertising campaign for http://www.mingw.org/.
I say he should make his add-in for Eclipse - especially since he's a Java programmer - and suggest people that like his add-in to move to that IDE instead. -
Re:why not?From the project manager posting:
extends the Visual Studio Express Editions which is a direct violation of both the EULA and "ethos" of the Express product line.
Read "ethos" as "business case". MS is using http://en.wikipedia.org/wiki/Market_segmentation. The Express products are a http://en.wikipedia.org/wiki/Gateway_drug to piss you off enough to pony up enough money for the real deal.
Test Driven Development is not, itself, a bad thing, but if Too Many People glommed onto the underlying technology, and a culture of freedom of expression broke out, well...let us leave the unspeakable unspoken.
The whole thing is business, pure and simple. If you leave off the 'good' and 'evil' labels, the situation is easier to process.
Of course, maybe it's all a stealth advertising campaign for http://www.mingw.org/. Who can say? -
Re:itsatrap right?
You want to write windows programs? Last I checked you had two compiler options anymore: Microsoft and Microsoft. Even the cost of visual basic is going to be close to $100 US.
Uh, Free Microsoft Visual Express, Free Python on Windows, Free Ruby on Windows, MinGW...
If you run Windows on OLPC, I'd go for Windows XP Embedded. -
Re:Visual Studio?
I heard Oxygen is also popular among breathers.
Yeah, it is. However, pure oxygen can kill you.
What, that wasn't the analogy you were going for?
That's OK, the analogy you were going for is flawed, since Intel C++, Eclipse C/C++ Development Tools, MinGW, and Borland Codegear C++ Builder can all be used as C++ development tools for Win32... 3 of the 4 are specifically written to build Win32 apps (Eclipse isn't).
This is by no means a complete list, either. -
Re:MS Grasping for Straws
-
This is news?
This isn't news. There has been POSIX Support in NT4 and win2k forever (so it seems), and Windows 2003 already can do NIS if you know what you are doing with schemas and the Services for Unix. The only thing "new" would be unix shells native to the OS... but this can be done effectively now with other packages like cygwin or MinGW.
-
Don't forget cross-over technologiesDon't forget to take into account cross-over technologies like, well, CrossOver Office, VMware, Win4Lin, Cedega, MinGW and Cygwin.
Also, don't assume that KDE and GNOME are the only options. I personally run Window Maker (with various dockapps), with fspanel, and KeyLaunch, with xtrlock (invoked via keylaunch) as my screen lock. On top of that, I use various shell scripts that I've written over the years.
Desktop systems, especially for certain classes of users, are highly varied. Good luck trying to study them!
-
Re:Home depot
GCC is like having a Home Depot down the street that gives their stuff away. For no cost, anyone can use these tools to create just about anything they want. It's pretty amazing, and fitting for Thanksgiving to show some appreciation, that we all have access to these incredible tools for free.
I agree, such free tools are pretty damned amazing. You should also thank the companies who allow their employees to work on free projects (IBM, SUSE and Red Hat at the minimum). Although I personally need to also thank the MingW32 folks for making GCC work well on Windows.
And while you're giving props to the GCC crowd (after you accept that they have some corporate interests), you should also thank Microsoft for their free tools:
(1) The Visual C++ command-line compiler is free.
(2) Visual Studio Express editions are free (C++ / C# / Visual Basic / J# with a full IDE).
Oh, and a big thankyou to Apple as well:
(3) Apple XCode development environment / compiler [GCC variant] is free.
And (as a hint) - if you embrace Microsoft's or Apple's platforms (instead of only Linux), there's a chance that J. Random user will actually be able to run your software (as literally nobody runs Linux except freaky zealots or college kids). -
Re:Windows without a compiler?!
-
Re:It's not that it's hard
-
GCC = Vendor Lock InJust try doing a variadic macro and __attribute__() with Visual C.
I once tried to see if I could try building a certain OSS project in Visual C and couldn't because of the high amount of GCC-specific extensions used.
In all seriousness, VC allows people to write crappy code, but if it somehow prevents you from writing good code, then you are a crappy programmer. I actually do a lot of OSS work on Windows; I debug with VC because it has the best debugger, and do release builds in MinGW.
-
Include Windows OSS, Cygwin, Knoppix & Eclipse
If your students are not running Linux, and their backgrounds are in the Windows and mainframe worlds, then it might be best to approach OSS from the Windows side. This is especially true if your student's are not willing to install Linux on their own boxen or on whatever they may use at their place of employment.
So, be sure to include Windows based OSS programs such as found on the Open CD and check out the the source forge osswin site at http://osswin.sourceforge.net/.
You need to give them a flavor of what Linux is like to be sure, so include Knoppix in the mix somewhere.
It sounds like your course will be for programmers. If so, then introducing them to Cygwin would be a good idea. You may even wish to run KDE under cygwin on Windows (see http://kde-cygwin.sourceforge.net/
For development tools you should cover the creating programs from the command line using make, etc., but also cover OSS IDE's -- Eclipse in particular would be a good one. And of course use g++ for C++ and Sun's java (I am not a purist so I think Java's Sun will suffice but Sun's Java is not regarded as true OSS, so you may need to find something else for Java.)
If you use g++ with cygwin on windows, then also consider introducing them to minGW so they can make their programs run natively on windows.
I run both windows and Linux at home, and prefer Linux. But at work I have to use a window box. I have cygwin with X installed and use both firefox and OpenOffice as replacements with no problems. I am posting to let you know about the windows possibilities because I beleive that you may encounter some resistance if you require your student's to run Linux. OSS on windows is a good way to introduce those who are new to OSS and Unix like file systems and tools to newbies.
-
Linux is not a compiler.
While the preferred method would be simply use Linux, unfortunately my company is using Microsoft Visual Studio 6.0 with C++
Quit with the "Linux solves everything" cluelessness - Linux is not a C++ compiler. You mean to say that you think you'd rather develop under Linux than Windows. Okay, but then you have to decide what compiler (probably GCC) build system (Make, Scons?), version control (Subversion, CVS?) and what IDE or text editor to use (Eclipse, vi, Emacs?). If you're working in a team, it's going to be essential to at least standardise compiler and build system.
One thing you may be overlooking is that it's easy to duplicate what you refer to as the "Linux" toolchain experience on Windows - proving that there's nothing exclusively "Linux" about them. Thank GNU and the open source movement, not necessarily some guy from Finland:
* MingW32 is an excellent port of GCC to Windows. It probably has some difficulty compiling MSVC-specific code (I doubt MFC and .NET classes work), but you should ideally be using a cross-platform framework like wxWidgets instead anyway.
* Scons is a great Python based build scripting system. It leaves Makefiles in the dust as it allows you to use Python logic in the make process. I've personally run it on four different platforms (Windows, Linux, FreeBSD and Mac) and would never go back to Make. Although it helps, but is not necessary to be a Python fanatic (and if you don't know Python, take 20 minutes to follow the "Instant Python" tutorial linked on their site - it's possible you will fall in love with the language instantly).
* Eclipse is a nice cross-platform IDE that works well on Windows (and Linux, FreeBSD and the Mac). When used with the C++ extensions you get full syntax highlighting, project browsing and integrated debugging. Via custom project settings, it can be easily told how to build Scons projects instead of Makefile ones. (The only problem I've ever had working with Scons is requiring different settings to build Debug and Release builds, but I just set the IDE up to do Debug [work with that most of the time], then compiling and running Release from the command line).
And all of the above can be made to work nicely on Windows and Linux. If you switch to using those cross-platform tools on Windows, at some point your choice of platform becomes irrelevent and transitioning to Linux becomes extremely easy. -
Meanwhile Joe Developer..
..nearly has a seizure when he discovers that the commercial development licence for KDE is $3300 for one platform. (You're much better off using Gnome based Linux distros and doing development via cross-platform APIs like wxWidgets).
Because, you see, the development cost is $0 for using the Windows API (link to the Windows SDK download) and $0 for Visual C++ (link to the command-line compiler).
And for the cost of one KDE development licence you could buy 22 OEM copies of Windows XP Pro at $149., or 35 copies of Visual C++ .NET 2003 at $95 if you wanted an IDE to develop in (although personally I'd go with Eclipse and MingW32).
Who's expensive now? -
Re:Cygwin is the reason.In particular, if you intend to port a proprietary (non-GPL'd) application using Cygwin, you will need the proprietary-use license for the Cygwin library.
Yuck.
MinGW doesn't have such a Draconian clause in its license.
We ended up using a proprietary package because it was cheaper.
Did you evaluate MinGW and find that it wouldn't work? You can't get much cheaper than that... and it works well, too (or at least it Works For Me, YMMV, IANAL, WTFLOL etc).
-
Start here.
Start Here. Go there, read and do what it says.
And FYI, I'm resisting the urge to make snide remarks about the naivety of your comments. You state that you're ernestly going to try "making some games" (if you manage ONE coherent game I'll be impressed), and that you enthusiastically want to make 3D games (but appear to be scared of C++).
In the words of Yoda: Try not. Do. Or in this case, "after asking on Slashdot, try some of the suggestions".
Learn from games you play. You've obviously played a computer game before. Take one that's similar to the game you think you want to make. Write down all the things that you do in that game and what you think the game has to do to support that action.
(ie: you click "new game", the board re-initializes and sets up the game state. You try and move a piece, the game checks to see if it's a valid move. You win the game, the game somehow detected that condition. You've got a high score, the game knows this and stores it somewhere).
Write this down for a game that you know, then try to change it into the game that you want to make. Then expand each section with detail and keep adding more and more game features while keeping everything coherent. You'll soon figure out how complex (or simple) your game will probably be.
Great program design begins on paper. A great implementation can come later when you've got the broad strokes figured out. (Unless it's an organic design (which is often unavoidable in live projects where you can't afford to break something) - in which case, welcome to hell).
One of the first things that is beaten into 1st year computer science college students is that you should not cling to any one language. You should grow to the point where you can easily pick up any language thrown at you (the specific advanced knowledge later coming with experience).
FYI, there are decent free C++ tools and libraries available for Windows, you don't have to use whatever Microsoft tries to push on you.
With your Java background you might want to try messing around with Proce55ing (a very good prototyping tool) to solidify some of your ideas.
And of course, break the rules when it suits you. -
Re:Warped experiences?
Network code is the one major thing SDL is missing that DirectX has...but once again, when you're working on a shoestring budget, how are you supposed to afford that?
Two points:
(1) SDL has a network library.
(2) The DirectX SDK is a free download.
Even Microsoft's command-line C/C++ compiler is a free download. Snag that, the platform SDK and DirectX SDK and you're set. The only thing you don't have is the IDE.
I use Visual C++ and DirectX at work for making multimedia applications - but there is an alternative. At home (because I'm cheap and also because I run Windows, OS X and FreeBSD) - I use the MingW32 which lets me use GCC, OpenGL and SDL and to make cross-platform code that compiles on any of my machines. I also use IBM's free Eclipse IDE with the C++ plugin and the Scons build system - because those also work everywhere. -
Re:Why?
What some game companies can't understand is, they make the games, we have fun, they get money
That's the point. Everquest is a subscription game. This server emulator allows people to play Everquest without paying money to Sony.
some people have more fun creating than fighting and leveling up
If they really want to build bits and pieces of somebody else's MMO world, they should go and play Second Life (which is essentially a sandbox designed to host whatever you create, the have Windows and Mac clients, a Linux client is apparently on the way) - or they should simply roll their own MMO client (and when, in a sad twist of irony they decide to charge people to play it, I shall laugh). -
Re:How to install this thing?
I struggled with this a bit earlier today. The docs are pretty weak right now.
First, get and install mingw from http://www.mingw.org/download.shtml
Second, from Trolltech, get and install "qt-win-opensource-desktop-4.0.0-mingw.exe", NOT "qt-win-opensource-desktop-4.0.0.zip".
Then, from the Start menu, run "Qt 4.0.0 Command Prompt" to get a DOS box with everything set up properly. Then play with the examples and demos, using qmake to create the makefiles.
Hope that helps!! -
Re:More interesting...
I think the parent was asking how to compile for windows without using an installed version of windows.
In which case, setting up a linux mingw cross compiler might work.
And it might be possible to build a linux based cross compiler for cygwin, but then you become dependent on the cygwin DLL (unless you compile with -mno-cygwin, in which case, you're basically compiling for mingw anyway). -
Re:MINGW?
According to the following link http://www.mingw.org/MinGWiki/index.php/TheNextRe
l ease it might still take some time before there will be an official new MinGW version. However unofficial versions tend to popup quite quickly. For instance the following web page http://www.thisiscool.com/gcc_mingw.htm regularly provides MinGW binaries for GCC snapshots.
As for the speed of GCC, the compilation speed is often a bit disappointing compared to commertial compilers. Dead code elimination is an optimization which GCC already does for a very long time.
Marcel -
Re:Portable code
MSYS is what you are looking for.
-
Re:Quite the assumption
I'm pretty sure there are plenty of open source developers who have never touched GNU Make.
Open source on windows, OMG it does exist!!!!
Step out of your Linux bubble.
What's Linux-centric about GNU make?
I'm primarily a Windows user, and I used to use GNU make all the time. Until I realised I preferred omake. -
Re:Developing on Windows, Unix style.
-
Careful
Rather, we should identify the malware based on its behavior: Does it alter other executables not installed with it?
Careful. Microsoft could use this as an excuse to prohibit competing compiler toolchains from running on Windows.
Does it connect to one site repeatedly? Many sites rapidly?
Firewalls already detect this by hooking into the network stack, but correlating these with your other heuristics might provide a better idea.
Edit registry settings it doesn't create?
And watch it misclassify antispyware tools as spyware.
Remove or replace other files that weren't installed with it?
A word processor replaces files that weren't installed with it, namely your documents whenever you save them. I'd find this one tricky to define.
-
24x7Hi,
I already made a post in a thread about SFU that was looking like (disclaimer: i love cygwin):1) WSFU is faster (IO/API/...)
2) WSFU is better integrated with win32 architecture (OLE/ODBC/...)
3) WSFU make a lot of things easier than cygwin with windows
BUT, i wouldnt trade cygwin for it, note that i have both installed here. I just isolated what i needed from WSFU and was better than cygwin and added them last in my path. I dont have any preferences, but cygwin is waaay more complete, and you have the +/- the same versions of the application that runs on linux. Same config files work fine, same behaviours (which isnt the case with WSFU), etc.
For me, WSFU is just a little + to cygwin.Now bout your particular problem (prod env, 24x7), I've experienced very few problems running CygWin in such an environment. I use it since at least 5 years (I remember downloading it at 56k, so it's probably more), but there's some things you need to be aware with cygwin:
- Versions of the applications you run: they often differs from what you're used to. Sometimes I ended up with different settings between solaris, linux, win32, etc. This is generally fixed with a recompile of the common denominator version, possibly the latest one.
- Performances: As you probably noticed from the other posts, cygwin is an emulation layer. It is slow. And I really mean slow. Something you usually do in nunux in a few seconds might take a few minutes on win32 depending on how it is coded. Forks and threads are really badly implemented. Yet nobody else did better.
- Alternatives: Frequently natives win32 programs are faster, better, or both. Have a look on google after alternatives (adding +win32 +unix, and +free if money is a problem). It will save you some time. Maintaining several branches of your scripts might be a good investment, if you factor out the common base, and manage to get them do what they should on different platforms while compiling/installing (and anyway if you start nunux/win32, you might as well just do that, you'll end up with the pot). Though it perhaps require another employee, it's worth it. For cygwin alternatives I'd recommend the SFU (of course), Mingw, GNU utilities for Win32
- The DLL Nightmare (Take II): If you dont need too much apps (.exe) relative to cygwin it could be good to just use those. Compile the stuff you want in cygwin, and modify the $INSTALL path, so you can just take that to another machine. The DLL hell here is that you'll probably not only need the cygwin dll but some more... If you have quickview installed on your machine, you can see what DLLs a program use in its Import Section (from the PE header). Else i would recommend OllyDBG (free) or PE Explorer ($$$). Both can lists what DLLs an app use, just find them, and copy them in the folder, et voila! you can use it elsewhere.
- Perl: DO NOT USE the cygwin version of perl, unless you have a really good reason to do so. Instead use Active Perl It's damn faster. If it's called from bash then put #!/c:/perl/bin/perl5 -- or where ever you installed it). Some other things to know about active state perl on win32:
- Hiding the cmd.exe box when running a script: Instead of putting '.pl' at the end of your scripts, try '.wsf' and have a look at the examples given by ActiveState:
<Job ID="MyJobID">
<script language=PerlScript>
# ... your code here ...
</script
- Hiding the cmd.exe box when running a script: Instead of putting '.pl' at the end of your scripts, try '.wsf' and have a look at the examples given by ActiveState:
-
VMWare? Either Way?
What about the possibility of either running Linux inside VMWare on a Windows machine or the reverse?
Admission: I don't have recent direct experience with VMWare myself; it used to be that the two systems needed different IP addresses, but I don't know if that would keep within the constraints your customer wants to impose.
[My two cents: the constraint sounds overly artificial. A network-presence appliance that's secure and does its job is good enough for most people. Think of network printers, for example. It's not like every single active IP presence is going to need a Windows XP update...
Finally, I've heard some people express a preference for MinGW over Cygwin for some reason...
-
Re:Ah...But...
"The real question is, when is portage going to move over to
... Windows."
You mean ala mingw?
Hmm. a common, cross-platform open source sub-environment.
That just may make sense.
M. -
Re:Not entirely free if you're on dial-up
After downloading the VC++ Toolkit 2003 it was sad to see that the C++ standard library implementation appears to lack iostreams..
I've managed to build STLPort and Boost with it though (but not without hacking the source!). Gave me working iostreams at least, but i dont think it was worth it.
I rather use MinGW but it has broken support for wide-char strings
:(.