This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
How to change CR/LF to LF when compile gcc-4.1.2 in Mingw32 in Windows XP
- From: haibin zhang <dragzhb at yahoo dot com dot cn>
- To: gcc-help at gcc dot gnu dot org
- Date: Tue, 31 Jul 2007 16:13:42 +0800 (CST)
- Subject: How to change CR/LF to LF when compile gcc-4.1.2 in Mingw32 in Windows XP
Hi all:
Whne I compile m4-1.4.X using gcc-4.1.2 in Mingw32 in
Windows XP, it can be compiled, but Can't be used(It
can be used with gcc-2.95.3).
I asked mingw office team, they told me that this
error is in CR/LF, gcc-2.95.3 I/O
defaults to binary, with LF only line endings, but
gcc-4.1.2 default is text, hence CRLF line endings.
How can I change source code in gcc-4.1.X from
"default is text, hence CRLF line endings" to
"defaults to binary, with LF only line endings"
The following is the talking content with mingw team:
===================================================
On Sunday 08 July 2007 16:04, haibin zhang wrote:
> As I know , you must build m4-1.4.9 with gcc-2.95.3,
> It can't work when you build with gcc-3.4.X.
No, this is not the case. Yes, there is a problem,
but your evaluation
is completely wrong. You keep making these wild
assessments, without
presenting any form of corroborating evidence; let
*me* make a wild
guess: your gcc-2.95.3 is the MSYS development
compiler; gcc-3.4.x is a
MinGW compiler, which is unsuitable for building MSYS
components.
> I have reported the bug to m4 team , but they said
> they can't help me to resolve this problem.
Nor should they, on the basis of your inadequate
problem assessment.
> why m4-1.4.X can work building with gcc-2.95.3, but
> can't work building with gcc-3.4.X, I guess that the
> error is maybe ?in path resolve
Nope. You are way off beam here; it has nothing to do
with path
resolution. The difference is in binary mode versus
text mode for
standard stream I/O.
> I guess that m4-1.4.X can resolve path /usr/bin as
> /usr/bin in gcc-2.95.3 , but it many resolve path
> /usr/bin as c:/msys/bin in gcc-3.4.X , so m4-1.4.X
> can't be used .
Again, no. When you build with the MSYS development
compiler, I/O
defaults to binary, with LF only line endings; when
you build with a
MinGW compiler, the default is text, hence CRLF line
endings. Those
line ending differences completely explain the failure
of the MinGW
built m4-1.4.9 to work correctly with autoconf. If I
patch m4-1.4.9
sources, to force all standard streams, and all files
opened by m4, to
binary mode, then recompile with MinGW's 3.4.5
compiler, the resulting
m4.exe seems to work perfectly well with
autoconf-2.61. However, the
resulting m4 build does then fail four of its
testsuite checks; in each
case, the reported failure does appear to be related
to CRLF vs. LF
distinctions, for in each of the four cases, the
expected and actual
output appear identical to the naked eye;
===================================================
Regards
Zhang HaiBin
___________________________________________________________
抢注雅虎免费邮箱3.5G容量,20M附件!
http://cn.mail.yahoo.com