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).
http://bugs.winehq.org/show_bug.cgi?id=22998
--- Comment #1 from Austin English austinenglish@gmail.com 2010-10-03 20:23:36 CDT --- Still in 1.3.4 / FreeBSD 8.1-RELEASE
http://bugs.winehq.org/show_bug.cgi?id=22998
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #2 from Anastasius Focht focht@gmx.net 2012-04-08 18:20:42 CDT --- Hello Austin,
--- quote --- Still in 1.3.4 / FreeBSD 8.1-RELEASE --- quote ---
the FreeBSD habit of providing old gcc/binutils versions releases will probably not change anytime soon. Simply put: licensing issues. Most people just use ports to get newer version - as you did.
If you still want this prerequisite check: provide .s file from "-save-temps" to actually figure out what the assembler doesn't understand and to figure out a "safe" version.
Regards
http://bugs.winehq.org/show_bug.cgi?id=22998
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |ABANDONED
--- Comment #3 from Austin English austinenglish@gmail.com 2012-07-30 17:33:18 CDT --- I tried FreeBSD 8.3, but wine compiles fine in 64-bit mode there (once newer gcc/flex are installed). I don't think this will matter too much in practice, marking abandoned.
http://bugs.winehq.org/show_bug.cgi?id=22998
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Austin English austinenglish@gmail.com 2012-07-31 17:52:59 CDT --- Closing.