All Forums |
Register |
Login |
Search |
Subscriptions |
My Profile |
Inbox |
Tool Warehouse |
FAQs |
Resources |
Help |
Member List |
Address Book |
Logout |
|
|
Users viewing this topic: none |
|
Login |
|
|
wgcc - Apr. 6, '06, 4:13:05 AM
|
|
|
mduft
Posts: 15
Joined: Nov. 16, '05,
Status: offline
|
Hey there!
There are a lot of scripts / programs that help building unix sources for win32 (wcc, c89, cccl, etc.). I had massive problems with all of them so far. For that reason i wrote wgcc (interix-wgcc on sourceforge). This one seems to really work great -> it mimics gcc (arguments, etc.) and even supports shared libraries in the same way gcc does, the only thing with that is, that dll files are not known by makefiles and need to be copied manually along with the .so files (which really are import libs for windows). With wgcc along comes a little handy library, which does some unix <-> windows abstraction. The thing is mainly for interix (works on 3.5 and 5.2 (SUA) also), but can be ported to other plats with nearly no effort.
If anybody is interested in this, get it from sourceforge, and please let me know how things work! I successfully builded:
ORBit2
binutils
db
flex
gettext
glib
libIDL
libiconv
loki
lua
mico
openldap
openssl
pkgconfig
popt
readline
regex
zlib
and some others, which are internal from our company, but never intended to run on windows (all of them work fine with little or no changes -> not only compile, but WORK ;o)). And yes, this is plain and native win32 output, with no need for any interix libraries, just the pxwc (which comes along with wgcc is needed at link time!)
Just extract the package and do "./wgcc/build-sh --dir --config --build --install --prefix=/somewhere" -> I know, this is a bit reverse logic, but nobodys perfect, so i may change this...
Please send me some feedback. Anyone interested in helping me develop this, is very welcome!
Regards, Markus Duft
|
|
|
RE: wgcc - Apr. 7, '06, 12:37:05 PM
|
|
|
jerker_back
Posts: 68
Joined: Jul. 7, '05,
From: Sweden
Status: offline
|
Hello Marcus
I had a similar idea and played around with the MSDN sample "cc Wrapper" - a very simple and basic gcc wrapper for the MS compiler.
I think your initiative is a very good idea - I will check out the app and test.
regards jerker
|
|
|
RE: wgcc - Apr. 10, '06, 2:39:00 AM
|
|
|
mduft
Posts: 15
Joined: Nov. 16, '05,
Status: offline
|
Hey ;o)
Where can i find that cc Wrapper sample, could you give me an URL? Or did you mean the cc that comes with Interix?? I know that one upside down and inside out ;o)
Mine is written in C++, so it's very diefferent from cc, c89 and wcc (which are great, but still limited...)
Regards, markus
|
|
|
RE: wgcc - Apr. 11, '06, 2:09:24 AM
|
|
|
jerker_back
Posts: 68
Joined: Jul. 7, '05,
From: Sweden
Status: offline
|
You will find it in the MSDN library samples in
MSDN\Samples\VC\Compiler\General\ccwrapper
or at Microsoft downloads.
It is a very basic C++ app using STL iostream
From that sample I started my own implementation and I also planned to release it to SourceForge - but you beat me to it!!
Anyway, I had a quick look at your solution so far. I have not been able to test it. For what I seen you have not yet done any Interix specific additions. The idea of a independent user-driven implementation of a gcc wrapper for the MS compiler is by my opinion excellent. We are better off with a common version than everybody making their own changes to cc or wcc.
I could mention my objectives with the idea I had:
* combined interix cc, wcc and interix gcc wrapper for cl.exe not finished
* port of STLport and MS Dinkum C++ (7.1) to interix finished
* port of MS C runtime library (7.1) to interix not finished
* port of GNU glibc to interix not started
* Visual Studio Addin for GNU make makefiles will it ever be finished?
The reason I choosed the 7.1 CRT version is the CLR implementation in 8. Another choice could be the Windows DDK CRT (modified version 6).
|
|
|
RE: wgcc - Apr. 11, '06, 3:43:16 AM
|
|
|
mduft
Posts: 15
Joined: Nov. 16, '05,
Status: offline
|
Hey.
The purpose behind wgcc is to use the thing instead of gcc without need to modify any makefiles (or other stuff) and at the end get a native win32 executeable. And this job is done very well by now. Any additional stuff may be added, but for now it's fairly feature complete, as far as my/our needs are concerned. Included is wgcc, pxwc, ucl and ulink.
wgcc -> the wrapper itsself.. it does option mapping, path conversion (dos <-> unix), and many other things, like managing libraries, etc.
pxwc -> a little abstraction library which makes linking to ms libc's without or with just small modifications.
ucl -> use this on windows instead of cl.exe if you want to link against a library created with wgcc. It takes care of adding required header and libs.
ulink -> same thing as ucl, just for link.exe
I don't think that we need to implement a completly new libc. Using the MS libc is just fine, as long as pxwc abstracts any differences to glibc. wgcc can be started without pxwc support with "--boostrap" which is originally intended for compiling pxwc with wgcc, so then you would have just plain ms libc. there are no ports required... at least i think so ;o)
if you like, i'm glad to welcome you in our development team at sourceforge, or you may want to just take my sources and continue on your own. But i think for the near future, your plans are a bit to ... uhhm ... big and time consuming.
i forgot: porting glibc is a liftime task i think -> i looked into this some time ago, it would take ages!
Regards, Markus
|
|
|
New Messages |
No New Messages |
Hot Topic w/ New Messages |
Hot Topic w/o New Messages |
|
Locked w/ New Messages |
Locked w/o New Messages |
|
Post New Thread
Reply to Message
Post New Poll
Submit Vote
Delete My Own Post
Delete My Own Thread
Rate Posts |
|
|
|