http://bugs.winehq.org/show_bug.cgi?id=22998
Summary: configure: wine64 needs a new enough assembler Product: Wine Version: 1.2-rc2 Platform: x86-64 OS/Version: FreeBSD Status: NEW Keywords: download, source, win64 Severity: enhancement Priority: P2 Component: build-env AssignedTo: wine-bugs@winehq.org ReportedBy: austinenglish@gmail.com
When compiling wine64 on freebsd, the compile bombs out in ntdll: [austin@pcbsd-884 /usr/home/austin/wine-git/dlls/ntdll]$ make ../../tools/winegcc/winegcc -m64 -B../../tools/winebuild --sysroot=../.. -fasynchronous-unwind-tables -shared ./ntdll.spec actctx.o atom.o cdrom.o critsection.o debugbuffer.o debugtools.o directory.o env.o error.o exception.o file.o handletable.o heap.o large_int.o loader.o loadorder.o misc.o nt.o om.o path.o printf.o process.o reg.o relay.o resource.o rtl.o rtlbitmap.o rtlstr.o sec.o serial.o server.o signal_i386.o signal_powerpc.o signal_sparc.o signal_x86_64.o string.o sync.o tape.o thread.o threadpool.o time.o version.o virtual.o wcstring.o version.res -Wl,--image-base,0x7bc00000 -o ntdll.dll.so ../../libs/port/libwine_port.a -lpthread ntdll.oSSEYZ.s: Assembler messages: ntdll.oSSEYZ.s:23625: Error: bad register expression ntdll.oSSEYZ.s:23627: Error: bad register expression ntdll.oSSEYZ.s:23629: Error: bad register expression ntdll.oSSEYZ.s:23631: Error: bad register expression ntdll.oSSEYZ.s:23633: Error: bad register expression ntdll.oSSEYZ.s:23635: Error: bad register expression ntdll.oSSEYZ.s:23637: Error: bad register expression ntdll.oSSEYZ.s:23639: Error: bad register expression ntdll.oSSEYZ.s:23641: Error: bad register expression ntdll.oSSEYZ.s:23643: Error: bad register expression ntdll.oSSEYZ.s:23645: Error: bad register expression ntdll.oSSEYZ.s:23647: Error: bad register expression ntdll.oSSEYZ.s:23649: Error: bad register expression ntdll.oSSEYZ.s:23651: Error: bad register expression ntdll.oSSEYZ.s:23653: Error: bad register expression ntdll.oSSEYZ.s:23655: Error: bad register expression ntdll.oSSEYZ.s:23716: Error: bad register expression ntdll.oSSEYZ.s:23718: Error: bad register expression ntdll.oSSEYZ.s:23720: Error: bad register expression ntdll.oSSEYZ.s:23722: Error: bad register expression ntdll.oSSEYZ.s:23724: Error: bad register expression ntdll.oSSEYZ.s:23726: Error: bad register expression ntdll.oSSEYZ.s:23728: Error: bad register expression ntdll.oSSEYZ.s:23730: Error: bad register expression ntdll.oSSEYZ.s:23732: Error: bad register expression ntdll.oSSEYZ.s:23734: Error: bad register expression ntdll.oSSEYZ.s:23736: Error: bad register expression ntdll.oSSEYZ.s:23738: Error: bad register expression ntdll.oSSEYZ.s:23740: Error: bad register expression ntdll.oSSEYZ.s:23742: Error: bad register expression ntdll.oSSEYZ.s:23744: Error: bad register expression ntdll.oSSEYZ.s:23746: Error: bad register expression winebuild: /usr/bin/as --64 failed with status 256 winegcc: ../../tools/winebuild/winebuild failed *** Error code 2
/usr/bin/as is: GNU assembler version 2.15 [FreeBSD] 2004-05-23 (x86_64-obrien-freebsd) using BFD version 2.15 [FreeBSD] 2004-05-23
which isn't new enough for wine. Installing binutils from ports/devel/binutils, and adjusting path to use that assembler/linker, compiles fine.
That version is: GNU assembler version 2.20.1 (x86_64-portbld-freebsd8.0) using BFD version (GNU Binutils) 2.20.1.20100303
wine's configure should check to make sure the assembler is new enough, when compiling in 64-bit mode (a la gcc).