Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Charles Wilson
On 9/14/2010 7:18 AM, Corinna Vinschen wrote:
> On Sep 14 18:15, JonY wrote:
>> What do you suggest the fix should be?
> 
> I really don't know, but it's certainly not a fix in Cygwin.  The fact
> that /usr/bin is a mount point to /bin is nothing which wouldn't be 
> allowed under Linux as well.  There's a default mechanism in gcc which
> evaluates the paths to the tools, headers and libdb dirs by massaging
> the $prefix and $exec_prefix values in some way.  I assume you can
> work around this issue by using slightly different values, but I'm
> not fluent enough with the path evaluationin gcc to suggest the
> correct solution, for a given value of "correct".

Actually, I don't think this "problem" is all that critical.  I think
that in order to trigger it, you have to do some fairly unusual things:
set your $PATH so that /bin precedes /usr/bin (which, in most cases, has
zero effect...so why would you do that?), or deliberately invoke the
compiler by one of its full PATH specifications (that is not the "usual"
/usr/bin/ one).

I think I'd just put a note in the README, the "Port Notes" section,
like this:

=
If you invoke the compiler or other tools using a path like this:
/bin/x86_64-w64-mingw32-gcc ...
rather than these
/usr/bin/x86_64-w64-mingw32-gcc ...
x86_64-w64-mingw32-gcc ...
you may see errors.  If you must invoke the compiler using the /bin
formulation, you can avoid these errors by creating a temporary mount
point (or add the following to your ~/.bashrc):
mount -o bind /usr/x86_64-w32-mingw32 /x86_64-w32-mingw32
=

This can certainly wait until the next normal package update. At least,
that's my opinion...

--
Chuck

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Corinna Vinschen
On Sep 14 18:15, JonY wrote:
> On 9/14/2010 16:03, Corinna Vinschen wrote:
> >On Sep 14 15:30, JonY wrote:
> >>On 9/14/2010 15:29, Charles Wilson wrote:
> >>>I don't know about Andy, but I sure do -- and I can reproduce his
> >>>problem.  I suspect there is a "bug" in how the cross tool locates the
> >>>   /usr/x86_64-w64-mingw32/bin
> >>>directory, given the mount structure:
> >>>   /usr/bin = /bin
> >>>   /usr/lib = /lib
> >>>BUT
> >>>   /usr/x86_64-w64-mingw32 != /x86_64-w64-mingw32
> >>>
> >>>because if I do THIS:
> >>>mount -o bind /usr/x86_64-w64-mingw32 /x86_64-w64-mingw32
> >>>
> >>>then
> >>>   /bin/x86_64-w64-mingw32-gcc -o foo foo.c
> >>>works, just as if I had invoked
> >>>   x86_64-w64-mingw32-gcc -o foo foo.c
> >>>
> >>>I say this is a "bug" in quotes, because...well, I'm not sure it fits
> >>>the definition. It's *our* fault we use a wacky mount structure on 
> >>>cygwin...
> >>>
> >>>--
> >>>Chuck
> >>>
> >>
> >>So, if /usr/x86_64-w64-mingw32 actually exists, it works?
> >>
> >>This looks bad, nonetheless.
> >>
> >>Maybe we can fix cygwin by only redirecting known directories like,
> >>/usr/bin and /usr/lib to those in /.
> >
> >Cygwin doesn't redirect any /usr dirs to /.  There are default mount
> >points for /usr/bin ->  /bin and /usr/lib ->  lib.  That's all.  The
> >problematic path is generated in gcc itself.
> >
> >
> >Corinna
> >
> 
> What do you suggest the fix should be?

I really don't know, but it's certainly not a fix in Cygwin.  The fact
that /usr/bin is a mount point to /bin is nothing which wouldn't be 
allowed under Linux as well.  There's a default mechanism in gcc which
evaluates the paths to the tools, headers and libdb dirs by massaging
the $prefix and $exec_prefix values in some way.  I assume you can
work around this issue by using slightly different values, but I'm
not fluent enough with the path evaluationin gcc to suggest the
correct solution, for a given value of "correct".


Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader  cygwin AT cygwin DOT com
Red Hat

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Andy Koppe
On 14 September 2010 11:40, JonY wrote:
> On 9/14/2010 18:46, Andy Koppe wrote:
>>
>> On 14 September 2010 11:15, Marco Atzeri wrote:
>
> Is this to be expected?
>
> $ x86_64-w64-mingw32-gcc hello.c
> [compiles fine]
>
> $ /bin/x86_64-w64-mingw32-gcc hello.c
> /Users/Andy/AppData/Local/Temp/cckcwv49.s: Assembler

 messages:
>
> /Users/Andy/AppData/Local/Temp/cckcwv49.s:10: Error:

 bad register name `%rbp'
>
> /Users/Andy/AppData/Local/Temp/cckcwv49.s:11: Error:

 bad register name `%rsp'
>
> /Users/Andy/AppData/Local/Temp/cckcwv49.s:12: Error:

 bad register name `%rsp'
>
> /Users/Andy/AppData/Local/Temp/cckcwv49.s:14: Error:

 bad register name `%rip)'
>
> It's obviously picking up the wrong assembler that

 way
>>
>>> Usually assuring the /usr/bin is before /bin in the path
>>> solves the problems.
>>
>> /usr/bin is put before /bin in /etc/profile anyway, so it's not a
>> critical issue. I just happened to try it with the /bin prefix first,
>> probably because I was using tab completion on /bin to find the
>> executable name of the compiler.
>>
> OK, so calling "x86_64-w64-mingw32-gcc" or "/usr/bin/x86_64-w64-mingw32-gcc"
> in the shell usually works, but not "/bin/x86_64-w64-mingw32-gcc"?

Exactly.

Andy

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread JonY

On 9/14/2010 18:46, Andy Koppe wrote:

On 14 September 2010 11:15, Marco Atzeri wrote:

Is this to be expected?

$ x86_64-w64-mingw32-gcc hello.c
[compiles fine]

$ /bin/x86_64-w64-mingw32-gcc hello.c
/Users/Andy/AppData/Local/Temp/cckcwv49.s: Assembler

messages:

/Users/Andy/AppData/Local/Temp/cckcwv49.s:10: Error:

bad register name `%rbp'

/Users/Andy/AppData/Local/Temp/cckcwv49.s:11: Error:

bad register name `%rsp'

/Users/Andy/AppData/Local/Temp/cckcwv49.s:12: Error:

bad register name `%rsp'

/Users/Andy/AppData/Local/Temp/cckcwv49.s:14: Error:

bad register name `%rip)'


It's obviously picking up the wrong assembler that

way



Usually assuring the /usr/bin is before /bin in the path
solves the problems.


/usr/bin is put before /bin in /etc/profile anyway, so it's not a
critical issue. I just happened to try it with the /bin prefix first,
probably because I was using tab completion on /bin to find the
executable name of the compiler.

Andy



OK, so calling "x86_64-w64-mingw32-gcc" or 
"/usr/bin/x86_64-w64-mingw32-gcc" in the shell usually works, but not 
"/bin/x86_64-w64-mingw32-gcc"?


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Andy Koppe
On 14 September 2010 11:15, Marco Atzeri wrote:
>> > Is this to be expected?
>> >
>> > $ x86_64-w64-mingw32-gcc hello.c
>> > [compiles fine]
>> >
>> > $ /bin/x86_64-w64-mingw32-gcc hello.c
>> > /Users/Andy/AppData/Local/Temp/cckcwv49.s: Assembler
>> messages:
>> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:10: Error:
>> bad register name `%rbp'
>> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:11: Error:
>> bad register name `%rsp'
>> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:12: Error:
>> bad register name `%rsp'
>> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:14: Error:
>> bad register name `%rip)'
>> >
>> > It's obviously picking up the wrong assembler that
>> way

> Usually assuring the /usr/bin is before /bin in the path
> solves the problems.

/usr/bin is put before /bin in /etc/profile anyway, so it's not a
critical issue. I just happened to try it with the /bin prefix first,
probably because I was using tab completion on /bin to find the
executable name of the compiler.

Andy

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread JonY

On 9/14/2010 16:03, Corinna Vinschen wrote:

On Sep 14 15:30, JonY wrote:

On 9/14/2010 15:29, Charles Wilson wrote:

I don't know about Andy, but I sure do -- and I can reproduce his
problem.  I suspect there is a "bug" in how the cross tool locates the
/usr/x86_64-w64-mingw32/bin
directory, given the mount structure:
/usr/bin = /bin
/usr/lib = /lib
BUT
/usr/x86_64-w64-mingw32 != /x86_64-w64-mingw32

because if I do THIS:
mount -o bind /usr/x86_64-w64-mingw32 /x86_64-w64-mingw32

then
   /bin/x86_64-w64-mingw32-gcc -o foo foo.c
works, just as if I had invoked
   x86_64-w64-mingw32-gcc -o foo foo.c

I say this is a "bug" in quotes, because...well, I'm not sure it fits
the definition. It's *our* fault we use a wacky mount structure on cygwin...

--
Chuck



So, if /usr/x86_64-w64-mingw32 actually exists, it works?

This looks bad, nonetheless.

Maybe we can fix cygwin by only redirecting known directories like,
/usr/bin and /usr/lib to those in /.


Cygwin doesn't redirect any /usr dirs to /.  There are default mount
points for /usr/bin ->  /bin and /usr/lib ->  lib.  That's all.  The
problematic path is generated in gcc itself.


Corinna



What do you suggest the fix should be?

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Marco Atzeri
--- Mar 14/9/10,  ha scritto:

> On 9/14/2010 13:11, Andy Koppe
> wrote:
> > On 14 September 2010 03:13, JonY wrote:
> >> Version 4.5.1-1 of "mingw64-x86_64-gcc" has been
> uploaded.
> >>
> >> mingw64-x86_64-gcc contains GCC sources used by
> the 64bit target toolchain.
> >> See mingw64-x86_64-gcc-core,
> mingw64-x86_64-gcc-objc,
> >> mingw64-x86_64-gcc-ada, mingw64-x86_64-gcc-g++
> and
> >> mingw64-x86_64-gcc-fortran for binaries.
> >
> > Great stuff.
> >
> > First issue: Is this to be expected?
> >
> > $ x86_64-w64-mingw32-gcc hello.c
> > [compiles fine]
> >
> > $ /bin/x86_64-w64-mingw32-gcc hello.c
> > /Users/Andy/AppData/Local/Temp/cckcwv49.s: Assembler
> messages:
> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:10: Error:
> bad register name `%rbp'
> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:11: Error:
> bad register name `%rsp'
> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:12: Error:
> bad register name `%rsp'
> > /Users/Andy/AppData/Local/Temp/cckcwv49.s:14: Error:
> bad register name `%rip)'
> >
> > It's obviously picking up the wrong assembler that
> way.
> >
> > $ /bin/x86_64-w64-mingw32-gcc hello.c -v
> > Using built-in specs.
> > COLLECT_GCC=/bin/x86_64-w64-mingw32-gcc
> >
> COLLECT_LTO_WRAPPER=/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/lto-wrapper.exe

> >
> > Andy
> 
> That is weird.
> 
> Do you have mingw64 binutils installed? Somehow the cygwin
> binutils was 
> used.
> 


It is not so weird, I have already seen it in other programs 
that expect to be installed in /usr/bin
and are unable to find the other portions if they
are called from /bin

Instead of
/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/lto-wrapper.exe
that doesn't work

/usr/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/lto-wrapper.exe
means
/usr/lib/gcc/x86_64-w64-mingw32/4.5.1/lto-wrapper.exe

Usually assuring the /usr/bin is before /bin in the path 
solves the problems. For cygwin we could also remove /bin
at all from the path.

Marco



   


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Corinna Vinschen
On Sep 14 15:30, JonY wrote:
> On 9/14/2010 15:29, Charles Wilson wrote:
> >I don't know about Andy, but I sure do -- and I can reproduce his
> >problem.  I suspect there is a "bug" in how the cross tool locates the
> > /usr/x86_64-w64-mingw32/bin
> >directory, given the mount structure:
> > /usr/bin = /bin
> > /usr/lib = /lib
> >BUT
> > /usr/x86_64-w64-mingw32 != /x86_64-w64-mingw32
> >
> >because if I do THIS:
> >mount -o bind /usr/x86_64-w64-mingw32 /x86_64-w64-mingw32
> >
> >then
> >   /bin/x86_64-w64-mingw32-gcc -o foo foo.c
> >works, just as if I had invoked
> >   x86_64-w64-mingw32-gcc -o foo foo.c
> >
> >I say this is a "bug" in quotes, because...well, I'm not sure it fits
> >the definition. It's *our* fault we use a wacky mount structure on cygwin...
> >
> >--
> >Chuck
> >
> 
> So, if /usr/x86_64-w64-mingw32 actually exists, it works?
> 
> This looks bad, nonetheless.
> 
> Maybe we can fix cygwin by only redirecting known directories like,
> /usr/bin and /usr/lib to those in /.

Cygwin doesn't redirect any /usr dirs to /.  There are default mount
points for /usr/bin -> /bin and /usr/lib -> lib.  That's all.  The
problematic path is generated in gcc itself.


Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader  cygwin AT cygwin DOT com
Red Hat

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread JonY

On 9/14/2010 15:29, Charles Wilson wrote:

On 9/14/2010 2:57 AM, JonY wrote:

That is weird.

Do you have mingw64 binutils installed? Somehow the cygwin binutils was
used.


I don't know about Andy, but I sure do -- and I can reproduce his
problem.  I suspect there is a "bug" in how the cross tool locates the
/usr/x86_64-w64-mingw32/bin
directory, given the mount structure:
/usr/bin = /bin
/usr/lib = /lib
BUT
/usr/x86_64-w64-mingw32 != /x86_64-w64-mingw32

because if I do THIS:
mount -o bind /usr/x86_64-w64-mingw32 /x86_64-w64-mingw32

then
   /bin/x86_64-w64-mingw32-gcc -o foo foo.c
works, just as if I had invoked
   x86_64-w64-mingw32-gcc -o foo foo.c

I say this is a "bug" in quotes, because...well, I'm not sure it fits
the definition. It's *our* fault we use a wacky mount structure on cygwin...

--
Chuck



So, if /usr/x86_64-w64-mingw32 actually exists, it works?

This looks bad, nonetheless.

Maybe we can fix cygwin by only redirecting known directories like, 
/usr/bin and /usr/lib to those in /. It would probably break third party 
apps, so its not entirely good either.


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread Charles Wilson
On 9/14/2010 2:57 AM, JonY wrote:
> That is weird.
> 
> Do you have mingw64 binutils installed? Somehow the cygwin binutils was
> used.

I don't know about Andy, but I sure do -- and I can reproduce his
problem.  I suspect there is a "bug" in how the cross tool locates the
/usr/x86_64-w64-mingw32/bin
directory, given the mount structure:
/usr/bin = /bin
/usr/lib = /lib
BUT
/usr/x86_64-w64-mingw32 != /x86_64-w64-mingw32

because if I do THIS:
mount -o bind /usr/x86_64-w64-mingw32 /x86_64-w64-mingw32

then
  /bin/x86_64-w64-mingw32-gcc -o foo foo.c
works, just as if I had invoked
  x86_64-w64-mingw32-gcc -o foo foo.c

I say this is a "bug" in quotes, because...well, I'm not sure it fits
the definition. It's *our* fault we use a wacky mount structure on cygwin...

--
Chuck

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-14 Thread JonY

On 9/14/2010 13:11, Andy Koppe wrote:

On 14 September 2010 03:13, JonY wrote:

Version 4.5.1-1 of "mingw64-x86_64-gcc" has been uploaded.

mingw64-x86_64-gcc contains GCC sources used by the 64bit target toolchain.
See mingw64-x86_64-gcc-core, mingw64-x86_64-gcc-objc,
mingw64-x86_64-gcc-ada, mingw64-x86_64-gcc-g++ and
mingw64-x86_64-gcc-fortran for binaries.


Great stuff.

First issue: Is this to be expected?

$ x86_64-w64-mingw32-gcc hello.c
[compiles fine]

$ /bin/x86_64-w64-mingw32-gcc hello.c
/Users/Andy/AppData/Local/Temp/cckcwv49.s: Assembler messages:
/Users/Andy/AppData/Local/Temp/cckcwv49.s:10: Error: bad register name `%rbp'
/Users/Andy/AppData/Local/Temp/cckcwv49.s:11: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/cckcwv49.s:12: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/cckcwv49.s:14: Error: bad register name `%rip)'

It's obviously picking up the wrong assembler that way.

$ /bin/x86_64-w64-mingw32-gcc hello.c -v
Using built-in specs.
COLLECT_GCC=/bin/x86_64-w64-mingw32-gcc
COLLECT_LTO_WRAPPER=/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with:
/home/user/cygp6/mingw64-x86_64-gcc/mingw64-x86_64-gcc-4.5.1-1/src/gcc-4.5.1/configure
--srcdir=/home/user/cygp6/mingw64-x86_64-gcc/mingw64-x86_64-gcc-4.5.1-1/src/gcc-4.5.1
-C --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin
--sbindir=/usr/sbin --libexecdir=/usr/lib --datadir=/usr/share
--localstatedir=/var --sysconfdir=/etc --datarootdir=/usr/share
--docdir=/usr/share/doc/mingw64-x86_64-gcc --build=i686-pc-cygwin
--host=i686-pc-cygwin --target=x86_64-w64-mingw32
--with-sysroot=/usr/x86_64-w64-mingw32/sys-root
--with-build-sysroot=/usr/x86_64-w64-mingw32/sys-root
--disable-multilib --disable-win32-registry
--enable-languages=c,ada,c++,fortran,objc,obj-c++
--enable-fully-dynamic-strings --enable-libgomp
--enable-sjlj-exceptions --enable-version-specific-runtime-libs
--with-dwarf2 --enable-decimal-float=bid --enable-lto
Thread model: win32
gcc version 4.5.1 (GCC)
COLLECT_GCC_OPTIONS='-v' '-mtune=generic' '-march=x86-64'
  /bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/cc1.exe -quiet -v -iprefix
/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/ hello.c -quiet -dumpbase
hello.c -mtune=generic -march=x86-64 -auxbase hello -version -o
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s
GNU C (GCC) version 4.5.1 (x86_64-w64-mingw32)
 compiled by GNU C version 4.5.0, GMP version 4.3.1, MPFR
version 2.4.1-p5, MPC version 0.8
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory
"/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/../../../../x86_64-w64-mingw32/include"
ignoring nonexistent directory
"/usr/x86_64-w64-mingw32/sys-root/usr/local/include"
ignoring duplicate directory
"/bin/../lib/gcc/../../lib/gcc/x86_64-w64-mingw32/4.5.1/include"
ignoring duplicate directory
"/bin/../lib/gcc/../../lib/gcc/x86_64-w64-mingw32/4.5.1/include-fixed"
ignoring nonexistent directory
"/bin/../lib/gcc/../../lib/gcc/x86_64-w64-mingw32/4.5.1/../../../../x86_64-w64-mingw32/include"
#include "..." search starts here:
#include<...>  search starts here:
  /bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/include
  /bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/include-fixed
  /usr/x86_64-w64-mingw32/sys-root/mingw/include
End of search list.
GNU C (GCC) version 4.5.1 (x86_64-w64-mingw32)
 compiled by GNU C version 4.5.0, GMP version 4.3.1, MPFR
version 2.4.1-p5, MPC version 0.8
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 80e7a582a443f3cfd9d86919d58b0d54
COLLECT_GCC_OPTIONS='-v' '-mtune=generic' '-march=x86-64'
  as -v -o /Users/Andy/AppData/Local/Temp/ccD8vdf5.o
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s
GNU assembler version 2.20.51 (i686-cygwin) using BFD version (GNU
Binutils) 2.20.51.20100410
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s: Assembler messages:
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:10: Error: bad register name `%rbp'
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:11: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:12: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:14: Error: bad register name `%rip)'

Andy


That is weird.

Do you have mingw64 binutils installed? Somehow the cygwin binutils was 
used.


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-13 Thread Andy Koppe
On 14 September 2010 03:13, JonY wrote:
> Version 4.5.1-1 of "mingw64-x86_64-gcc" has been uploaded.
>
> mingw64-x86_64-gcc contains GCC sources used by the 64bit target toolchain.
> See mingw64-x86_64-gcc-core, mingw64-x86_64-gcc-objc,
> mingw64-x86_64-gcc-ada, mingw64-x86_64-gcc-g++ and
> mingw64-x86_64-gcc-fortran for binaries.

Great stuff.

First issue: Is this to be expected?

$ x86_64-w64-mingw32-gcc hello.c
[compiles fine]

$ /bin/x86_64-w64-mingw32-gcc hello.c
/Users/Andy/AppData/Local/Temp/cckcwv49.s: Assembler messages:
/Users/Andy/AppData/Local/Temp/cckcwv49.s:10: Error: bad register name `%rbp'
/Users/Andy/AppData/Local/Temp/cckcwv49.s:11: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/cckcwv49.s:12: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/cckcwv49.s:14: Error: bad register name `%rip)'

It's obviously picking up the wrong assembler that way.

$ /bin/x86_64-w64-mingw32-gcc hello.c -v
Using built-in specs.
COLLECT_GCC=/bin/x86_64-w64-mingw32-gcc
COLLECT_LTO_WRAPPER=/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with:
/home/user/cygp6/mingw64-x86_64-gcc/mingw64-x86_64-gcc-4.5.1-1/src/gcc-4.5.1/configure
--srcdir=/home/user/cygp6/mingw64-x86_64-gcc/mingw64-x86_64-gcc-4.5.1-1/src/gcc-4.5.1
-C --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin
--sbindir=/usr/sbin --libexecdir=/usr/lib --datadir=/usr/share
--localstatedir=/var --sysconfdir=/etc --datarootdir=/usr/share
--docdir=/usr/share/doc/mingw64-x86_64-gcc --build=i686-pc-cygwin
--host=i686-pc-cygwin --target=x86_64-w64-mingw32
--with-sysroot=/usr/x86_64-w64-mingw32/sys-root
--with-build-sysroot=/usr/x86_64-w64-mingw32/sys-root
--disable-multilib --disable-win32-registry
--enable-languages=c,ada,c++,fortran,objc,obj-c++
--enable-fully-dynamic-strings --enable-libgomp
--enable-sjlj-exceptions --enable-version-specific-runtime-libs
--with-dwarf2 --enable-decimal-float=bid --enable-lto
Thread model: win32
gcc version 4.5.1 (GCC)
COLLECT_GCC_OPTIONS='-v' '-mtune=generic' '-march=x86-64'
 /bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/cc1.exe -quiet -v -iprefix
/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/ hello.c -quiet -dumpbase
hello.c -mtune=generic -march=x86-64 -auxbase hello -version -o
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s
GNU C (GCC) version 4.5.1 (x86_64-w64-mingw32)
compiled by GNU C version 4.5.0, GMP version 4.3.1, MPFR
version 2.4.1-p5, MPC version 0.8
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory
"/bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/../../../../x86_64-w64-mingw32/include"
ignoring nonexistent directory
"/usr/x86_64-w64-mingw32/sys-root/usr/local/include"
ignoring duplicate directory
"/bin/../lib/gcc/../../lib/gcc/x86_64-w64-mingw32/4.5.1/include"
ignoring duplicate directory
"/bin/../lib/gcc/../../lib/gcc/x86_64-w64-mingw32/4.5.1/include-fixed"
ignoring nonexistent directory
"/bin/../lib/gcc/../../lib/gcc/x86_64-w64-mingw32/4.5.1/../../../../x86_64-w64-mingw32/include"
#include "..." search starts here:
#include <...> search starts here:
 /bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/include
 /bin/../lib/gcc/x86_64-w64-mingw32/4.5.1/include-fixed
 /usr/x86_64-w64-mingw32/sys-root/mingw/include
End of search list.
GNU C (GCC) version 4.5.1 (x86_64-w64-mingw32)
compiled by GNU C version 4.5.0, GMP version 4.3.1, MPFR
version 2.4.1-p5, MPC version 0.8
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 80e7a582a443f3cfd9d86919d58b0d54
COLLECT_GCC_OPTIONS='-v' '-mtune=generic' '-march=x86-64'
 as -v -o /Users/Andy/AppData/Local/Temp/ccD8vdf5.o
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s
GNU assembler version 2.20.51 (i686-cygwin) using BFD version (GNU
Binutils) 2.20.51.20100410
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s: Assembler messages:
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:10: Error: bad register name `%rbp'
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:11: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:12: Error: bad register name `%rsp'
/Users/Andy/AppData/Local/Temp/ccLGdDIT.s:14: Error: bad register name `%rip)'

Andy

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



[ANNOUNCEMENT] New package: mingw64-x86_64-gcc-4.5.1-1

2010-09-13 Thread JonY

Version 4.5.1-1 of "mingw64-x86_64-gcc" has been uploaded.

mingw64-x86_64-gcc contains GCC sources used by the 64bit target 
toolchain. See mingw64-x86_64-gcc-core, mingw64-x86_64-gcc-objc,
mingw64-x86_64-gcc-ada, mingw64-x86_64-gcc-g++ and 
mingw64-x86_64-gcc-fortran for binaries.


  *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO ***

If you want to unsubscribe from the cygwin-announce mailing list, look 
at the "List-Unsubscribe: " tag in the email header of this message. 
Send email to the address specified there. It will be in the format:


cygwin-announce-unsubscribe-you=yourdomain@cygwin.com

If you need more information on unsubscribing, start reading here:

http://sourceware.org/lists.html#unsubscribe-simple

Please read *all* of the information on unsubscribing that is available 
starting at this URL.


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple