From: Timothy M. <ter...@gm...> - 2008-04-22 08:20:49
|
Hello My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when used by most configure scripts. So I tried to compile sed 4.1.5 and it wants a file named *alloca.h*. Can I install something to get this file ? Thank you, Timothy Madden, Romania |
From: JonY <10...@gm...> - 2008-04-22 08:37:24
|
Timothy Madden wrote: > Hello > > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when > used by most configure scripts. > So I tried to compile sed 4.1.5 and it wants a file named *alloca.h*. > Can I install something to get this file ? > > > Thank you, > Timothy Madden, > Romania > > Hi, you should be fine by copying malloc.h to alloca.h, ymmv. btw, sed should not be compiled for MinGW, but for MSYS. You will get strange errors regarding slashes and back-slashes when you use the MinGW compiled sed under MSYS. |
From: Timothy M. <ter...@gm...> - 2008-04-22 08:42:20
|
What does it mean to compile for MinGW and to compile for MSYS ? As I know I have to read the INSTALL file, which usually says I have to run ./configure, make and make install. Thank you, Timothy Madden, Romania On Tue, Apr 22, 2008 at 11:37 AM, JonY <10...@gm...> wrote: > Timothy Madden wrote: > > Hello > > > > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when > > used by most configure scripts. > > So I tried to compile sed 4.1.5 and it wants a file named *alloca.h*. > > Can I install something to get this file ? > > > > > > Thank you, > > Timothy Madden, > > Romania > > > > > Hi, > you should be fine by copying malloc.h to alloca.h, ymmv. > > btw, sed should not be compiled for MinGW, but for MSYS. You will get > strange errors regarding slashes and back-slashes when you use the MinGW > compiled sed under MSYS. > > ------------------------------------------------------------------------- > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference > Don't miss this year's exciting event. There's still time to save $100. > Use priority code J8TL2D2. > > http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > |
From: JonY <10...@gm...> - 2008-04-22 09:09:51
|
Timothy Madden wrote: > What does it mean to compile for MinGW and to compile for MSYS ? > > As I know I have to read the INSTALL file, which usually says I have to > run ./configure, make and make install. > Hi, those instructions are for UNIX installs, which work well for MSYS+MinGW *most* of the time. Here is the subtle difference: Programs compiled with MinGW use msvcrt.dll as the runtime dll, MSYS variants use msys-1.0.dll. Programs found loading msvcrt.dll will get their paths converted to native Windows format instead of UNIX ones. MSYS confuses sed syntax for path, eg "sed s/foo/bar/g" will have "/" coverted to "\", which makes no sense to sed if linked to msvcrt.dll. To compile for MSYS, you will need msysDVLPR, which is not usually what MinGW users want, think of it as another "Cygwin" install. |
From: Timothy M. <ter...@gm...> - 2008-04-22 09:22:13
|
I get it now, thank you *s/foo/bar/g*, passed as an argument to sed, would be a sort of substitute command, like in vim, and sh would think it is path. I have a similar problem when I try to run *cmd /C myscript.bat* from msys sh, where */C* get converted to *C:\* and I have to use *cmd \ /C myscript.bat* :) Is this behavior documented somewhere, maybe with a hint on how to avoid it ? Thank you, Timothy Madden, Romania On Tue, Apr 22, 2008 at 12:09 PM, JonY <10...@gm...> wrote: > Timothy Madden wrote: > > What does it mean to compile for MinGW and to compile for MSYS ? > > > > As I know I have to read the INSTALL file, which usually says I have to > > run ./configure, make and make install. > > > > Hi, > those instructions are for UNIX installs, which work well for MSYS+MinGW > *most* of the time. > > Here is the subtle difference: > > Programs compiled with MinGW use msvcrt.dll as the runtime dll, MSYS > variants use msys-1.0.dll. Programs found loading msvcrt.dll will get > their paths converted to native Windows format instead of UNIX ones. > > MSYS confuses sed syntax for path, eg "sed s/foo/bar/g" will have "/" > coverted to "\", which makes no sense to sed if linked to msvcrt.dll. > > To compile for MSYS, you will need msysDVLPR, which is not usually what > MinGW users want, think of it as another "Cygwin" install. > > ------------------------------------------------------------------------- > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference > Don't miss this year's exciting event. There's still time to save $100. > Use priority code J8TL2D2. > > http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > |
From: Brian D. <br...@de...> - 2008-04-22 08:40:21
|
Timothy Madden wrote: > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when > used by most configure scripts. > So I tried to compile sed 4.1.5 and it wants a file named alloca.h. > Can I install something to get this file ? On Win32, the alloca() function is declared in malloc.h and there is no alloca.h. This is documented at <http://msdn2.microsoft.com/en-us/library/wb1s57t5.aspx>. So, the question you really need to be asking is why is sed trying to include a header that doesn't exist on this platform: either the configure test is broken, or sed doesn't support native Win32 configurations. I suspect the latter, in which case you may have to use a POSIX compatibility library to build it. Brian |
From: Timothy M. <ter...@gm...> - 2008-04-22 08:51:58
|
Can you tell me what POSIX compatibility libraries can I find ? I though MinGW is such a tool ... Thank you, Timothy Madden, Romania On Tue, Apr 22, 2008 at 11:40 AM, Brian Dessent <br...@de...> wrote: > Timothy Madden wrote: > > > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when > > used by most configure scripts. > > So I tried to compile sed 4.1.5 and it wants a file named alloca.h. > > Can I install something to get this file ? > > On Win32, the alloca() function is declared in malloc.h and there is no > alloca.h. This is documented at > <http://msdn2.microsoft.com/en-us/library/wb1s57t5.aspx>. > > So, the question you really need to be asking is why is sed trying to > include a header that doesn't exist on this platform: either the > configure test is broken, or sed doesn't support native Win32 > configurations. I suspect the latter, in which case you may have to use > a POSIX compatibility library to build it. > > Brian > > ------------------------------------------------------------------------- > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference > Don't miss this year's exciting event. There's still time to save $100. > Use priority code J8TL2D2. > > http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > |
From: JonY <10...@gm...> - 2008-04-22 09:15:01
|
Timothy Madden wrote: > Can you tell me what POSIX compatibility libraries can I find ? > I though MinGW is such a tool ... > > Thank you, > Timothy Madden, > Romania > > > Hi, MinGW is not such tool, that's why its called "Minimalist GNU for Windows", its an interface to the Win32 API and runtime. POSIX compatibility for Win32 can be found in Cygwin and Interix. Ignore message if duplicate, having some connection problems. |
From: Timothy M. <ter...@gm...> - 2008-04-22 09:27:08
|
On Tue, Apr 22, 2008 at 12:14 PM, JonY <10...@gm...> wrote: > Timothy Madden wrote: > > Can you tell me what POSIX compatibility libraries can I find ? > > I though MinGW is such a tool ... > > > > Thank you, > > Timothy Madden, > > Romania > > > > > > > > Hi, > MinGW is not such tool, that's why its called "Minimalist GNU for > Windows", its an interface to the Win32 API and runtime. > > POSIX compatibility for Win32 can be found in Cygwin and Interix. > > Ignore message if duplicate, having some connection problems. > That's too sad ... I thought it emulates a Linux or Unix system on top of Win32. Like a new Linux variant ... An interface for what ? What is the other side of the interface ? Thank you, Timothy Madden, Romania |
From: Earnie B. <ea...@us...> - 2008-04-22 13:52:20
|
Quoting Timothy Madden <ter...@gm...>: > > That's too sad ... > I thought it emulates a Linux or Unix system on top of Win32. > Like a new Linux variant ... > Can you tell me what led you to imagine this? Earnie |
From: JonY <10...@gm...> - 2008-04-22 09:34:15
|
Timothy Madden wrote: > I get it now, thank you > > *s/foo/bar/g*, passed as an argument to sed, would be a sort of > substitute command, like in vim, and sh would think it is path. > I have a similar problem when I try to run *cmd /C myscript.bat* from > msys sh, where */C* get converted to *C:\* and I have to use *cmd \ /C > myscript.bat* :) > > Is this behavior documented somewhere, maybe with a hint on how > to avoid it ? > > Thank you, > Timothy Madden, > Romania > Hi, You can use "cmd //C myscript.bat", "//" gets converted to "/". As for documentation, sorry, its mostly my personal experience, but you can always start with google. You may want to use escape characters like an extra "/" like the above "//". btw, can you avoid top-posting? thanks. |
From: Timothy M. <ter...@gm...> - 2008-04-22 09:39:37
|
On Tue, Apr 22, 2008 at 12:34 PM, JonY <10...@gm...> wrote: > Timothy Madden wrote: > > I get it now, thank you > > > > *s/foo/bar/g*, passed as an argument to sed, would be a sort of > > substitute command, like in vim, and sh would think it is path. > > I have a similar problem when I try to run *cmd /C myscript.bat* from > > msys sh, where */C* get converted to *C:\* and I have to use *cmd \ /C > > myscript.bat* :) > > > > Is this behavior documented somewhere, maybe with a hint on how > > to avoid it ? > > > > Thank you, > > Timothy Madden, > > Romania > > > > Hi, > You can use "cmd //C myscript.bat", "//" gets converted to "/". > > As for documentation, sorry, its mostly my personal experience, but you > can always start with google. You may want to use escape characters like > an extra "/" like the above "//". > > btw, can you avoid top-posting? thanks. > > Yes, sorry. Great tip. Too bad it is not documented. Thank you for your help, Timothy Madden, Romania |
From: Brian D. <br...@de...> - 2008-04-22 09:56:33
|
Timothy Madden wrote: > That's too sad ... > I thought it emulates a Linux or Unix system on top of Win32. > Like a new Linux variant ... No, that is very much *not* what MinGW is, as that is the opposite of Minimalistic (the Min in MinGW.) It is, however, more or less what Cygwin is, except that "linux variant" is a very bad way of describing it; better would be "system providing similar and compatible source level interfaces." MinGW to a first approximation attempts to duplicate the functionality of the MS Visual C/C++ compiler, i.e. the same APIs and compatible headers. Brian |
From: Timothy M. <ter...@gm...> - 2008-04-22 10:49:03
|
On Tue, Apr 22, 2008 at 12:55 PM, Brian Dessent <br...@de...> wrote: > Timothy Madden wrote: > > > That's too sad ... > > I thought it emulates a Linux or Unix system on top of Win32. > > Like a new Linux variant ... > > No, that is very much *not* what MinGW is, as that is the opposite of > Minimalistic (the Min in MinGW.) It is, however, more or less what > Cygwin is, except that "linux variant" is a very bad way of describing > it; better would be "system providing similar and compatible source > level interfaces." > > MinGW to a first approximation attempts to duplicate the functionality > of the MS Visual C/C++ compiler, i.e. the same APIs and compatible > headers. > Indeed Thank you for your help. Timothy Madden, Romania. |
From: Greg C. <gch...@sb...> - 2008-04-22 12:25:28
|
On 2008-04-22 08:20Z, Timothy Madden wrote: > > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when used > by most configure scripts. Most or all of the configure scripts I've seen work with the old version of 'sed' that MSYS provides. I've sometimes used my own build of a later version for other purposes, but I keep it in a different directory, so that MSYS normally uses its own; perhaps that would work for whatever package you're trying to build? > So I tried to compile sed 4.1.5 and it wants a file named *alloca.h*. Can I > install something to get this file ? 'sed-4.0.7' builds out of the box in MSYS, but 'sed-4.1.4' seems to need a few manual changes: http://article.gmane.org/gmane.comp.gnu.mingw.msys/2644 Apparently 'sed-4.1.5' would need some manual change of its own. Copying an "alloca.h" from somewhere would be treating the symptom rather than the cause; it would be better to look for a line like checking for working alloca.h... in the output of 'configure' and try to figure out why it wants to use that header when the compiler doesn't provide it. However, that whole approach will only produce a native binary that's not MSYS aware--it'll have problems like this: http://article.gmane.org/gmane.comp.gnu.mingw.msys/2183 so you'll want to build 'sed' as an MSYS application: http://www.mingw.org/MinGWiki/index.php/BuildMSYSApplication if your goal is to use a recent version of 'sed' with MSYS. |
From: Timothy M. <ter...@gm...> - 2008-04-22 12:55:14
|
On Tue, Apr 22, 2008 at 3:25 PM, Greg Chicares <gch...@sb...> wrote: > [...] > > 'sed-4.0.7' builds out of the box in MSYS, but 'sed-4.1.4' seems > to need a few manual changes: > > http://article.gmane.org/gmane.comp.gnu.mingw.msys/2644 > > Apparently 'sed-4.1.5' would need some manual change of its own. > Copying an "alloca.h" from somewhere would be treating the > symptom rather than the cause; it would be better to look for a > line like > checking for working alloca.h... > in the output of 'configure' and try to figure out why it wants > to use that header when the compiler doesn't provide it. > > However, that whole approach will only produce a native binary > that's not MSYS aware--it'll have problems like this: > > http://article.gmane.org/gmane.comp.gnu.mingw.msys/2183 > > so you'll want to build 'sed' as an MSYS application: > > http://www.mingw.org/MinGWiki/index.php/BuildMSYSApplication > > if your goal is to use a recent version of 'sed' with MSYS. > > I have seen alloca.h is not POSIX so I think sed should not use it, but I copied malloc.h to alloca.h and now sed compiles. I actually have that kind of problems you said I could have, and that is why I was trying to build the latest sed. Now I have GNU sed 4.1.5 but I need to build it as an MSYS application to avoid path translation. Thank you, Timothy Madden, Romania |
From: Earnie B. <ea...@us...> - 2008-04-22 15:46:01
|
Quoting Greg Chicares <gch...@sb...>: > On 2008-04-22 08:20Z, Timothy Madden wrote: >> >> My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when used >> by most configure scripts. > > Most or all of the configure scripts I've seen work with the old > version of 'sed' that MSYS provides. I've sometimes used my own > build of a later version for other purposes, but I keep it in a > different directory, so that MSYS normally uses its own; perhaps > that would work for whatever package you're trying to build? > I forget exactly but wasn't there a dependency change. I'm thinking newer versions of m4 are required for newer versions of sed but I may be way off base. Also there are MSYS specific changes to sed that are needed to avoid the CR\LF and other issues. Earnie |
From: Earnie B. <ea...@us...> - 2008-04-22 13:43:46
|
Quoting Timothy Madden <ter...@gm...>: >> >> Hi, >> You can use "cmd //C myscript.bat", "//" gets converted to "/". >> >> As for documentation, sorry, its mostly my personal experience, but you >> can always start with google. You may want to use escape characters like >> an extra "/" like the above "//". >> >> btw, can you avoid top-posting? thanks. >> >> Yes, sorry. > > Great tip. > Too bad it is not documented. > It is documented. start /doc/msys/README.rtf Earnie |
From: Timothy M. <ter...@gm...> - 2008-04-22 14:19:06
|
On Tue, Apr 22, 2008 at 4:43 PM, Earnie Boyd <ea...@us...> wrote: > > Quoting Timothy Madden <ter...@gm...>: > > > >> > >> Hi, > >> You can use "cmd //C myscript.bat", "//" gets converted to "/". > >> > >> As for documentation, sorry, its mostly my personal experience, but you > >> can always start with google. You may want to use escape characters > like > >> an extra "/" like the above "//". > >> > >> btw, can you avoid top-posting? thanks. > >> > >> Yes, sorry. > > > > Great tip. > > Too bad it is not documented. > > > > It is documented. > > start /doc/msys/README.rtf > > Great, I did not know about that. Thank you, Timothy Madden, Romania |
From: Earnie B. <ea...@us...> - 2008-04-22 13:59:00
|
Quoting Timothy Madden <ter...@gm...>: > Hello > > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when used > by most configure scripts. > So I tried to compile sed 4.1.5 and it wants a file named *alloca.h*. Can I > install something to get this file ? > Please see the caution in the section titled "Using binaries with different runtimes:" in the /doc/msys/README.rtf file. Earnie |
From: Timothy M. <ter...@gm...> - 2008-04-22 14:30:04
|
On Tue, Apr 22, 2008 at 4:58 PM, Earnie Boyd <ea...@us...> wrote: > > Quoting Timothy Madden <ter...@gm...>: > > > Hello > > > > My sed (GNU sed 4.0.6) seems to complain about 'extra characters' when > used > > by most configure scripts. > > So I tried to compile sed 4.1.5 and it wants a file named *alloca.h*. > Can I > > install something to get this file ? > > > > Please see the caution in the section titled "Using binaries with > different runtimes:" in the /doc/msys/README.rtf file. > > Yeah, I saw cygwin executables do no work well under msys ... Many times I type *hash* to make sure some command I use is from msys and not cygwin ... |
From: Timothy M. <ter...@gm...> - 2008-04-22 14:28:16
|
On Tue, Apr 22, 2008 at 4:52 PM, Earnie Boyd <ea...@us...> wrote: > > Quoting Timothy Madden <ter...@gm...>: > > > > > That's too sad ... > > I thought it emulates a Linux or Unix system on top of Win32. > > Like a new Linux variant ... > > > > Can you tell me what led you to imagine this? > Well ... first think about *uname*, which returns MINGW32_NT, not "Windows XP Professional SP2" Than many software products have a "mingw/cygwin" port, not a "Windows" port.. And then if you think about it ... it has to be: if you try to build a piece of Linux, you will soon find that you also need the other pieces. Then portable software is meant to be configured and compiled on many platforms, without changes, right ? Is it not a target for mingw to be one of these platforms ? Timothy Madden, Romania |
From: JonY <10...@gm...> - 2008-04-22 15:04:11
|
Timothy Madden wrote: > > On Tue, Apr 22, 2008 at 4:52 PM, Earnie Boyd > <ea...@us... <mailto:ea...@us...>> wrote: > > > Quoting Timothy Madden <ter...@gm... > <mailto:ter...@gm...>>: > > > > > That's too sad ... > > I thought it emulates a Linux or Unix system on top of Win32. > > Like a new Linux variant ... > > > > Can you tell me what led you to imagine this? > > Well ... first think about *uname*, which returns MINGW32_NT, not > "Windows XP Professional SP2" > Than many software products have a "mingw/cygwin" port, not a "Windows" > port.. > And then if you think about it ... it has to be: if you try to build a > piece of Linux, you will soon find > that you also need the other pieces. Then portable software is meant to > be configured and compiled > on many platforms, without changes, right ? Is it not a target for mingw > to be one of these platforms ? > > Timothy Madden, > Romania > > Hi, build a piece of Linux? That was kinda shocking :) Configure and compile is commonly found in autotools build system, but in no way implies Linux. Yes MinGW is a valid target, so is BSD or AIX, but portability is not universal, try building nano the text editor and you'll soon find that it requires ncurses, ioctl and other POSIX functions. Some Windows software are also distributed in such a way that it "needs other pieces", try subversion or Apache, it needs APR and APR-util, which can all build under MSVC. |
From: Earnie B. <ea...@us...> - 2008-04-22 15:23:42
|
Quoting Timothy Madden <ter...@gm...>: > On Tue, Apr 22, 2008 at 4:52 PM, Earnie Boyd <ea...@us...> > wrote: > >> >> Quoting Timothy Madden <ter...@gm...>: >> >> > >> > That's too sad ... >> > I thought it emulates a Linux or Unix system on top of Win32. >> > Like a new Linux variant ... >> > >> >> Can you tell me what led you to imagine this? >> > > Well ... first think about *uname*, which returns MINGW32_NT, not "Windows > XP Professional SP2" > Than many software products have a "mingw/cygwin" port, not a "Windows" > port.. > And then if you think about it ... it has to be: if you try to build a > piece of Linux, you will soon find > that you also need the other pieces. Then portable software is meant to be > configured and compiled > on many platforms, without changes, right ? Is it not a target for mingw to > be one of these platforms ? > I think you missed the definitions of MinGW and MSYS at http://www.mingw.org/. Portability is something that the author/maintainers of the tool may be concerned with however it isn't the author/maintainers job to test every possible combination of system. Windows is just another target but if no one has ``ported'' the software to Windows API then your SOL unless *you* (unless you're willing to hire or wait on someone else) provide a patch to the author/maintainers to allow the software to build on Windows. Earnie |
From: Tor L. <tm...@ik...> - 2008-04-22 16:04:04
|
> Portability is something that the > author/maintainers of the tool may be concerned with however it isn't > the author/maintainers job to test every possible combination of > system. Exactly. You (Timothy, not Earnie) might be surprised to see how many changes can be needed to port some software that has been developed on Linux only even to another Unix platform, like Solaris. Not to mention HP-UX or AIX... --tml |