Xmingwin For Cross Generation Applications
An anonymous reader writes "Xmingwin makes it practical to generate Windows programs from a Linux server. This column gives a recipe for setting up Xmingwin, outlines the most important reasons for doing so and shows you how to generate executables for multiple platforms -- including Windows DLLs -- from a single Linux source."
"I have to go", I said, getting up and pulling my pants on. Natalie Portman
turned over in my bed, looking mournfully at me. I walked over some hot grits
and into the kitchen. Why on earth was that woman so blissfully ignorant of my
dark secret? The signs were there, and in my humble opinion, they were pretty
obvious. The History log was cluttered with slashdot comments and the desktop
wallpaper was a painting by Theodor Kittelsen. Come on!
There were stacks of warez and pr0n, but none had been touched for ages. No, I
had other hobbies. Dark undertakings. Evil distractions. Things so horrible that
even Voldemort would be ashamed. I stared into my coffee. It was black like my
tainted soul. Would Natalie leave me if I told her? Would she call the police?
I felt naked and petrified. The grains of sugar I poured into my coffee, so
white and pure, being disolved by the darkness. They seemed to slow down, as to
rub in the choice I had made long ago. Did I want +1 Interesting? or maybe
Insightful? No. I didn't want any Informative or Funny moderations. I was young
and reckless, and I still regret it.
I would blame society, I would blame education, but I have no one to blame but
myself. As I walk through the valley of the shadow of death, I fear no evil, for
I am one of them.
I am a troll.
Xing man this baby!
/. is the S0X.
Seriously though,
I've been trying to migrate people _away_ from windows, this only makes it easier for them to stay ;-)
;-p
Of course it also help linux break into places it wasn't allowed before, so i've got to say bravo for that!
Still, should be running BSD
/* oops I accidentally made a comment, sorry */
Winner of Company Most likely to produce Buggy Software....
The people who do this. You can produce work on the Server but to properly test you still need the windows environment. So you have to deploy to that, given that you need a testing environment per developer as well as for UAT and QA then your costs aren't really reduced. The advantages in terms of compile speed are killed in terms of transfer and deployment.
Somebody somewhere clearly things they need this, somebody somewhere doesn't work in large teams and on commercial apps.
Sorry to dis someones work, but I'd be more interested in a decent Open Source windows IDE on windows than being able to do a fraction of the work on Linux... and I loathe MS-Windows. Why do so many Open Source projects have to ape MS rather than take on the beast.
Too many people, too many projects. Come and save us IBM.
An Eye for an Eye will make the whole world blind - Gandhi
In my experience this is not what should be done.
Moving files like this, executables which are virii prone into one system or another helps with the spread of virii. Why? It may not look logical at first
What happens is systems that are not running the software can check it for the virii that do run on it. They'll miss the infections coming from the other platform, or perhaps some other one again.
What you end up with is a security risk. It pulls everything down the tubes.
I can see it now... if this exists, somewhere in the NetBSD ports collection, it means we can actually create WinNT/Alpha applications... =)
The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
This sounds like intriguing functionality, but really can't they find a better name than Xmingwin? Its a horrible name, practically unpronounceable, difficult to remember and spell, easy to confuse with other similar projects.
I know this might sound like a troll but I'm serious about this. Projects do themselves no favors by adopting badly thought out names. A confusing name makes it less likely that I will use or evangelize this software. When someone asks me for a recommendation for a software platform for generating Windows executables on our Linux servers I'll be embarassed to say Xmingwin (I work in a corporate environment). Its hard to say, hard for someone to understand when said and worse it sounds amateurish. Its almost as bad as Ogg Vorbis: very geek-cool to use Klingon but the kiss of death in a serious corporate environment.
This isn't a slam on open source - god knows there are too many dumb names in the closed source world - but a plea for developers to think about naming. Its an important part of getting your technology talked about and accepted.
Sailing over the event horizon
Ramsey Clark, former U.S. Attorney General,
has drawn up articles of impeachment against Bush,
Cheney, Rumsfeld and Ashcroft. There is a
petition being organized and these will be
hand delivered to the Democratic leaders and
the judiciary committee. To sign the petition go
to Impeach Bush et al..
There you can read the articles and sign
the petition if you so choose.
Peace,
W00t
Windows generates Linux!
Usually programs like these are buggy, and it does not work 100% on both systems (look at WINE for example). Since this is not the same "idea" it could be good, but i guess it will take time before people start using it fully.
Note to self: get smarter troll to guard door.
Linux Linux Linux, what about BSD?
- lets see, we have
...
- The mingw-runtime package
- The gcc-mingw32 package
How exactly is this different? We've been able to produce win32 executables using mingw and gcc for years now.*cough* Borland Kylix *cough*
How about Linux version Kiss My Ass you fucking smelly hippy liberal tree-fucking dog-kissing faggots! Got get a fucking job and BUY the software that the rest of the world is using, you stupid fucks. Welcome to the REAL WORLD were your mad linux skills are worth about as much as a monkey fart, you filthy asshole always looking for a handout. The country wasn't MADE by lazy fucks like you, always wanting something for nothing. Quit giving each other faggot AIDS and then looking to me for free healthcare, you dumb cunts. You're not just lazy, your a fucking filthy aids-infested faggot always looking for a blow job from some toothless bum on the street. And it's a good thing because on the street is where you belong! Free trash, free stink, free disease, free used needles, and free operating systems. You'll fucking love it, you get shit for free and I do mean SHIT - the shit you lay your head on at night, and that shitty hacked nigger-rig OS called Linux. Fucking duct tape and glue made by every other fucking asshole in the world. Yee-ha, that's security! Assholes without jobs writing shitty code, please some work for my company and protect my assets! Tell you what, you can fuck your mother and her aids-cunt with a rubber that every other stinking hippy in the world has designed. Fucking freak kiss MY ASS and take a bath I can smell you from here.
MOD UP PARENT!!!!!!
Do you remeber those bumper stickers from the 80's that said "Flush Twice, it's a long way to Washington." The way it would work is poop would come out of your butt, into the sewage system, and then supposedly to the US Government. But we have a NEW system in place today - the fecal sludge of millions is funneled to Finland or wherever that hippie Linus Titandass is from and he passes this shit off as "Linux." Linux is the disease of contemporary IT. It is a computer virus that does more binary damage than AIDs does to the human race (and 32 of all AIDS cases are directly linked to your mother, that filthy crack whore). You should wrap a virtual condom around your computer assets - the Trojan of servers, Windows 2000. Then you will learn the meaning of productivity and security. In the meantime, quick visiting the armless fleshy dentist for a while and get some real skills, take a bath, and get a job. You're a filthy leech on society, and there's more to life than free handouts you stupid fuck.
For those of you wondering, this only works for apps that you are currently writing. It isn't going to work for just any windows app, but it's still kinda neat.
---
If you just signed up for a new sprint pcs cell phone I can get you a $10 rebate. Email me at jchawk@ my website (tr0n.com) that's a zero in tr0n.
Lots of people are posting on how this is potentially a bad idea. Sure, it's not likely to be as mature as other compiler environments. There's all kinds of small shops where this could simplify build infrastructure, though. Maintaining different build servers for all the platform variation a company chooses to support can be costly to build, especially with the infrastructure to do revision control and fire off simultaneous builds and package things together. If a company just needs to produce command line tools or simple DLL's to accelerate code in a scripting language, this might be a good choice.
Probably the largest win is allowing developers to unit test application logic on their local Windows desktop, if they prefer that environment, before doing final unit test, integration test, and deployment on top of *nix/Linux.
Until you get some balls I suggest that you take your own advice. OS software may not cost $$. But how many lines are you willing to write for the common good?
Ignore the Dragon Sig. You are not crunchy and there isn't enough ketchup in the world to make you taste good!!
Meddle thou not in the affairs of Dragons, for thou art crunchy and with most anything.
I've been using a MINGW32-based linux->win32 cross-development environment for years. The same concepts apply as for cross-compiling to different hardware architectures. This is definitely not new software. With properly written makefiles, you can build to target both Linux and Win32 platforms from the same source tree and build environment. Of course you must test on both platforms, but having a setup like this definitely makes it easier to build large projects for both Windows and Linux.
Seems like another way to get the same functionality would be to get the VC++ command-line compiler working under WINE. Has anyone had any luck with this?
Can your IM do this?
when they named it? trying to make the transition to windows DIFFICULT by using ENGLISH?
Every cool project should have a FAQ entry explaining its name. If the name is too easy, or has an obvious pronunciation, then it can't be a cool project. Ideally, there should be long-standing flamewars about it (i.e. is it "vee-eye" or "veye"?).
XMingWin makes for a very nice tool to use from the Linux side. But the big question is: How well does it work in the area of dynamically loading libraries (.so and .dll stuff) and all the headaches associated with all those #ifdefs in portable libraries!
As a particular minimal case try: Hello World app using wxWindows for both environments. It would be nice to see if this is a more vialble approach than using the same sources using gcc under Linux and Dev-C++ inder Win* to compile a portable app.
Just curious...
Sergio
I can say from experience that most of the wxWindows samples compile and run quite well. I didn't test them all but all I compiled ran. Some of them are a lot more involved than "Hello World". I made both static and .dll versions of the wxWindows lib and tested them under Wine and NT 4.0
c om pile.html
BTW, here's a quick and dirty HowTo I set up in response to a request from the SunCoast Linux Users Group (SLUG) mail list a week or so ago.
Ed.
http://web.tampabay.rr.com/ecentan1/xplat/cross
Please saves us from wrath of windoze.
I am tired of all the security and memory leaks of windoze OS and application
Please not another .NOT hell project.
.Not is domed. I like my Java and Linux c++ native apps.
.Not Hell language.
Windoze and
I dont want willy nilly OS from windoze and
Like a lot of people here, I don't get it the point. Cross compilers are for developing for platforms that can't host development tools. When I did cross platform (Windows, Solaris, HP-UX) development, my tools were Vim and CVS plus the native compiler. Which platform would I edit on? Whichever was most convenient that moment.
On the other hand, for those who want to use MinGW for Windows development, check out the GPL Visual-MinGW. Al Stevens had some very nice things to say about it in the December 2002 issue of Dr. Dobb's. (The article isn't online, but the issue's table of contents is here.)
There are some significant licensing differences between MinGW and Cygwin. The Cygwin runtime is GPL (not LGPL!), but can be licensed for non-open use. The MinGW runtime is public domain.
Stupid job ads, weird spam, occasional insight at
As another poster has pointed out, people have been cross-compiling with MinGW (not really "Mingwin") for years, and most people seem to just call it MinGW.
Note that Debian already comes with a MinGW cross-compiler package, which will soon be available for non-i386 architectures as well (e.g. cross-compiling from ppc to win32).
If a thing is not diminished by being shared, it is not rightly owned if it is only owned & not shared. S. Augustine
It doesn't supply the baroquely integrated development environments (IDEs) common in Windows development shops. Instead, Mingwin's rich toolchest of robust utilities performs basic development operations: compilation, linking, and so on. All these are flexible and programmable, though, in the usual UNIX spirit.
Wow, that's the most incredible SPIN I've seen in years.
It is my understanding that this has been doing this for a while, and was actually called a "Canadian Cross Compiler".
sigs are a waste of space
Running mingw32 under Wine to compile Win32 executables. I suppose it still works. Ran perfect for me.
Beyond just automated builds, my big issue with VisualStudio is that it sucks boulders through capillary tubes if you ever have to change compilation options on more than one build target, or add a bunch of "only slightly different" items to a build. Besides the fact that it's often bloody impossible to figure out where it's setting a given compiler option.
And when I've used the VC command line tools and called up Microsoft to report bugs I've gotten laughter, at best. They simply won't support anything but the visual environment.
This gives a full-featured development environment using real production quality tools in an environment that won't be blowing chunks every time I try to do something remotely outlandish with the USB bus. I've no problem with having a Windows box beside my Linux box for running the app, I just want a stable, full-featured development environment. Linux cross-compiling onto a Samba mount is closer to that than Microsoft's been in many years.
Interesting...
This is the real thing in terms of what a practical developer of apps targeted to run both on Linux and Win32 needs.
Thanks!
Having banged my head against a wall over this for a while, I eventually managed to put together a script (based on ideas from Pieter Thysebaert) that builds and installs mingw from latest sources (gcc-3.2.1, binutils-2.13.90,
The script also works around a couple of problems not described in any of the HOWTOs I've read.
Anyway, download it from here
| What, you were expecting
-O_O- +---- something witty?
So, this basically sets up a cross compiler?
And, that's a big deal?
I've been generating cygwin releases from linux for
years. I can't believe that this rates as news in
any way.
If it does, then the crossgcc mailing list at sources.redhat.com is probably worth checking out. There you can be amazed by the fact that many many people are using cross compilers on a daily basis.