From: Eric W. <ewe...@cs...> - 2007-04-27 03:25:48
|
Hi All, I put together a distro of gcc for the avr target using mingw/msys. I now need to build gcc so it will run on Vista. I am aware of the issue with _access and X_OK, and that is the problem I'm trying to solve. - There is the GCC bug report: <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30972> - There is the WinAVR bug report (by the same person): http://sourceforge.net/tracker/index.php?func=detail&aid=1646333&group_id=68 108&atid=520074 - I've googled for information about the issue - I've tried defining X_OK as 0 and, as Danny Smith said in this list, that just doesn't work. - I found posts in the archives of this list that point to this post by Danny on the cygwin list: <http://www.cygwin.com/ml/cygwin-cvs/2007-q1/msg00120.html> And referring to this patch: <http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/mingw/include/io.h.diff ?cvsroot=src&r1=1.16&r2=1.17> But I just don't see how patching a file in the winsup directory will help me build a cross gcc on mingw when the gcc release I'm using (4.1.2) doesn't even contain that directory. Can somebody (Danny, maybe?) elaborate on how to get this issue fixed for a cross gcc? Or how to use that patch to do what I need to do? Thanks for your help, Eric Weddington |
From: Brian D. <br...@de...> - 2007-04-27 06:02:32
|
Eric Weddington wrote: > But I just don't see how patching a file in the winsup directory will help > me build a cross gcc on mingw when the gcc release I'm using (4.1.2) doesn't > even contain that directory. > > Can somebody (Danny, maybe?) elaborate on how to get this issue fixed for a > cross gcc? Or how to use that patch to do what I need to do? That patch is to MinGW's io.h (from mingw-runtime). So after applying that and installing it (to /usr/include) you recompile your cross gcc, and anywhere in gcc that calls access() now gets the new macro version that removes the X_OK bit. Brian |
From: Dave M. <win...@nt...> - 2007-04-27 08:03:06
|
Eric Weddington wrote: > Hi All, > > - I found posts in the archives of this list that point to this post by > Danny on the cygwin list: > <http://www.cygwin.com/ml/cygwin-cvs/2007-q1/msg00120.html> > And referring to this patch: > <http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/mingw/include/io.h.diff > ?cvsroot=src&r1=1.16&r2=1.17> > > But I just don't see how patching a file in the winsup directory will help > me build a cross gcc on mingw when the gcc release I'm using (4.1.2) doesn't > even contain that directory. > > Can somebody (Danny, maybe?) elaborate on how to get this issue fixed for a > cross gcc? Or how to use that patch to do what I need to do? > You patch your mingw installation which does contain that directory, then add -D__USE_MINGW_ACCESS to the cflags for your gcc build. I do this at configure time for the devkitPro toolchains.i.e. CFLAGS=-D__USE_MINGW_ACCESS ../../$GCC_SRCDIR/configure \ --enable-languages=c,c++ \ etc Dave Dave |
From: Eric W. <ewe...@cs...> - 2007-04-28 16:08:57
|
> -----Original Message----- > From: min...@li... > [mailto:min...@li...] On Behalf > Of Brian Dessent > Sent: Friday, April 27, 2007 12:02 AM > To: MinGW Users List > Subject: Re: [Mingw-users] FW: Building cross gcc to work on Vista > > Eric Weddington wrote: > > > But I just don't see how patching a file in the winsup > directory will help > > me build a cross gcc on mingw when the gcc release I'm > using (4.1.2) doesn't > > even contain that directory. > > > > Can somebody (Danny, maybe?) elaborate on how to get this > issue fixed for a > > cross gcc? Or how to use that patch to do what I need to do? Brian Dessent wrote: > That patch is to MinGW's io.h (from mingw-runtime). So after applying > that and installing it (to /usr/include) you recompile your cross gcc, > and anywhere in gcc that calls access() now gets the new macro version > that removes the X_OK bit. Dave Murphy wrote: > You patch your mingw installation which does contain that directory, > then add -D__USE_MINGW_ACCESS to the cflags for your gcc build. I do > this at configure time for the devkitPro toolchains.i.e. > > CFLAGS=-D__USE_MINGW_ACCESS ../../$GCC_SRCDIR/configure \ > --enable-languages=c,c++ \ Thank you Brian and Dave! I tried this out yesterday. I took the patch to io.h by Danny and patched c:\MinGW\include\io.h (after stripping off a couple of leading directories), rebuilt GCC for the avr target and it worked successfully on Vista! I had an additional issue after that, with the make and shell that I was using. I would get errors from the shell when it was trying to execute some commands from make something about "invalid parameters". I changed out the make that I was using with the mingw32-make package (in the MinGW project) and that solved my problems there on Vista. I can now successfully build a basic test program from Make on Vista. Thanks also to Danny for creating the patch to solve this problem! Eric Weddington |
From: Yakumo <yak...@ya...> - 2007-04-29 13:01:43
|
Hello. I also want to ride this new horse. I have about one month or so working to make a build of the wxWidgets library in Vista 64 but I finally reached a point where ld.exe failed because could not find dllcrt2.o. An it EXISTS really in the lib directory of mingw32. If put everything in the paths and modified makefile.gcc variables to include also them, but there must be something that fails, so I want the new patched version of gcc that solves the implicit search paths issues. Can anybody provide me the steps where to download everything to make it work? I have a latop where I could build a cross version for Vista 64. Please just tell me if I need to install svn, what the repository need to download gcc from, and all the command line/makefile additions/modifications needed to make this build so I can finally work on my vista with gnu. Thank you very much in advance and sorry if I looked so desperate. Eric Weddington wrote: > > Hi All, > > I put together a distro of gcc for the avr target using mingw/msys. I now > need to build gcc so it will run on Vista. > > I am aware of the issue with _access and X_OK, and that is the problem I'm > trying to solve. > > - There is the GCC bug report: > <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30972> > - There is the WinAVR bug report (by the same person): > http://sourceforge.net/tracker/index.php?func=detail&aid=1646333&group_id=68 > 108&atid=520074 > - I've googled for information about the issue > - I've tried defining X_OK as 0 and, as Danny Smith said in this list, > that > just doesn't work. > - I found posts in the archives of this list that point to this post by > Danny on the cygwin list: > <http://www.cygwin.com/ml/cygwin-cvs/2007-q1/msg00120.html> > And referring to this patch: > <http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/mingw/include/io.h.diff > ?cvsroot=src&r1=1.16&r2=1.17> > > But I just don't see how patching a file in the winsup directory will help > me build a cross gcc on mingw when the gcc release I'm using (4.1.2) > doesn't > even contain that directory. > > Can somebody (Danny, maybe?) elaborate on how to get this issue fixed for > a > cross gcc? Or how to use that patch to do what I need to do? > > Thanks for your help, > Eric Weddington > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > > -- View this message in context: http://www.nabble.com/FW%3A-Building-cross-gcc-to-work-on-Vista-tf3655549.html#a10241137 Sent from the MinGW - User mailing list archive at Nabble.com. |
From: Brian D. <br...@de...> - 2007-04-29 13:57:07
|
Yakumo wrote: > Hello. I also want to ride this new horse. I have about one month or so > working to make a build of the wxWidgets library in Vista 64 but I finally > reached a point where ld.exe failed because could not find dllcrt2.o. An it > EXISTS really in the lib directory of mingw32. If put everything in the > paths and modified makefile.gcc variables to include also them, but there > must be something that fails, so I want the new patched version of gcc that > solves the implicit search paths issues. > > Can anybody provide me the steps where to download everything to make it > work? I have a latop where I could build a cross version for Vista 64. > Please just tell me if I need to install svn, what the repository need to > download gcc from, and all the command line/makefile additions/modifications > needed to make this build so I can finally work on my vista with gnu. Apply the patch to io.h in the message you quoted. That is the only thing you need to change. Then rebuild whatever gcc you're using. If you're using the stock MinGW gcc, use the gcc-*-src.tar.gz packages from the sourceforge download area. Consult the release notes and gcc-build.sh, they contain the exact commands used to build gcc. Brian |
From: David L. <yak...@ya...> - 2007-04-30 06:46:46
|
--- Brian Dessent <br...@de...> escribió: > Yakumo wrote: > > > Hello. I also want to ride this new horse. I have about one month or so > > working to make a build of the wxWidgets library in Vista 64 but I finally > > reached a point where ld.exe failed because could not find dllcrt2.o. An it > > EXISTS really in the lib directory of mingw32. If put everything in the > > paths and modified makefile.gcc variables to include also them, but there > > must be something that fails, so I want the new patched version of gcc that > > solves the implicit search paths issues. > > > > Can anybody provide me the steps where to download everything to make it > > work? I have a latop where I could build a cross version for Vista 64. > > Please just tell me if I need to install svn, what the repository need to > > download gcc from, and all the command line/makefile additions/modifications > > needed to make this build so I can finally work on my vista with gnu. > > Apply the patch to io.h in the message you quoted. That is the only > thing you need to change. Then rebuild whatever gcc you're using. If > you're using the stock MinGW gcc, use the gcc-*-src.tar.gz packages from > the sourceforge download area. Consult the release notes and > gcc-build.sh, they contain the exact commands used to build gcc. > > Brian > Just tow stupid/newbie question (I suppose). In the thread of the message I quoted, they were talking about avr target of GCC. What is avr, or what avr stands for? And other thing. I could use the stock version of gcc from mingw, but I suposse that I could also use the latest version of gcc and that I'll have no problem using gcc under a mingw32 environment, will I? Thanks. ____________________________________________________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com |
From: Brian D. <br...@de...> - 2007-04-30 14:46:37
|
David Lucena wrote: > And other thing. I could use the stock version of gcc from mingw, but I suposse that I could also > use the latest version of gcc and that I'll have no problem using gcc under a mingw32 environment, > will I? You mean compiling a stock FSF version? Well, first of all, that will have no effect on the Vista issue that this thread ostensibly relates to. That is entirely determined by whether or not you build gcc with the updated MinGW io.h, it has nothing to do with gcc itself. As far as having "no problems", that's a matter of personal taste and pain threshold. If you follow FSF gcc you get the latest features and optimizations, but win32 is still sort of a second class citizen and so often times you will find that some features are poorly tested, or that some languages (especially Ada and Java) won't even build. Heck, even getting a successfull build of just the default languages (C, C++, Fortran) can be extremely tricky, and is most definitely not something I'd suggest for a newbie. If you stick to just C or C++ the pain would be minimal, assuming you get past any build blockers. However, there are still outstanding issues that are fixed only with MinGW-local patches, not upstream. So, in general, no, if you want a stable and reliable gcc you must use the patched MinGW releases. Brian |
From: David L. <yak...@ya...> - 2007-04-30 18:09:53
|
--- Brian Dessent <br...@de...> escribió: > David Lucena wrote: > > > And other thing. I could use the stock version of gcc from mingw, but I suposse that I could > also > > use the latest version of gcc and that I'll have no problem using gcc under a mingw32 > environment, > > will I? > > You mean compiling a stock FSF version? Well, first of all, that will > have no effect on the Vista issue that this thread ostensibly relates > to. That is entirely determined by whether or not you build gcc with > the updated MinGW io.h, it has nothing to do with gcc itself. > > As far as having "no problems", that's a matter of personal taste and > pain threshold. If you follow FSF gcc you get the latest features and > optimizations, but win32 is still sort of a second class citizen and so > often times you will find that some features are poorly tested, or that > some languages (especially Ada and Java) won't even build. Heck, even > getting a successfull build of just the default languages (C, C++, > Fortran) can be extremely tricky, and is most definitely not something > I'd suggest for a newbie. > > If you stick to just C or C++ the pain would be minimal, assuming you > get past any build blockers. However, there are still outstanding > issues that are fixed only with MinGW-local patches, not upstream. So, > in general, no, if you want a stable and reliable gcc you must use the > patched MinGW releases. > > Brian > So I will have to download the latest mingw from its svn server, change the io.h, get the latest gcc also from svn server and build it using for example stock binary version of gcc 3.4.5 adding the spoken preprocessor defines to the corresponding flags. That would be enough for C, C++? ____________________________________________________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com |
From: Brian D. <br...@de...> - 2007-04-30 18:26:46
|
David Lucena wrote: > So I will have to download the latest mingw from its svn server, change the io.h, get the latest > gcc also from svn server and build it using for example stock binary version of gcc 3.4.5 adding > the spoken preprocessor defines to the corresponding flags. That would be enough for C, C++? I don't quite understand what you're asking here. MinGW uses CVS, and doesn't have a SVN server, and even if it did, you don't need to use it. You can apply the patch directly to your installed io.h file (in /mingw/include). If you want to re-build the MinGW 3.4.5 gcc, then like I said use the gcc source tarballs at the sourceforge download area. You should not try to build the stock FSF gcc 3.4.5, that would just give you a somewhat broken compiler without the MinGW-local patches. Only if you want to track current development (e.g. 4.3) would you need to get anything from source control, and as I said in the last email I don't think you should do this if your goal is a stable gcc or you're new at this. Brian |
From: Eric W. <ewe...@cs...> - 2007-04-30 12:53:06
|
> -----Original Message----- > From: min...@li... > [mailto:min...@li...] On Behalf > Of David Lucena > Sent: Monday, April 30, 2007 12:47 AM > To: MinGW Users List > Subject: Re: [Mingw-users] FW: Building cross gcc to work on Vista [OT] > Just tow stupid/newbie question (I suppose). In the thread of > the message I quoted, they were > talking about avr target of GCC. What is avr, or what avr stands for? The AVR is a popular 8-bit microcontroller designed and manufactured by Atmel. You can find out what it stands for by searching the forums on www.avrfreaks.net. > And other thing. I could use the stock version of gcc from > mingw, but I suposse that I could also > use the latest version of gcc and that I'll have no problem > using gcc under a mingw32 environment, > will I? I use the latest version of plain GCC because I build a cross-compiler (runs on Windows, compiles code for the AVR). However, I use two patches: - Patch to have the toolchain not search $prefix because the toolchain may be relocated. This is GCC bug #178621, but has been recently fixed on GCC HEAD. But I have yet to backport the official solution and try that out. - Patch to fix GCC bug #22133 (which is still open and has a patch) about trailling forward slash not allowed in include path. This bug still needs to get fixed in GCC HEAD. Eric Weddington |