AndreRH / hangover

Hangover runs simple Win32 applications on arm64 Linux
GNU Lesser General Public License v2.1
1.24k stars 91 forks source link

libiconv no picking mingw-w64 crosscompiler, but clang #99

Closed Chaosdave34 closed 1 year ago

Chaosdave34 commented 3 years ago

I have installed clang 5.0 from precompiled binaries (llvm.org). But when I run ./configure --enable-win64 I get the following error: "configure: error: You need clang >= 5.0 to build Wine for arm64."

Running on Raspberry Pi 4 Ubuntu 20.10 aarch64.

AndreRH commented 3 years ago

See #84

Chaosdave34 commented 3 years ago

I keep getting the following error:

make[2]: Entering directory '/home/david/Workspace/hangover/build/libiconv32/src'
/bin/bash ../libtool --mode=link clang  -g -O2 iconv_no_i18n.o ../srclib/libicrt.a ../lib/libiconv.la iconv.res -o iconv_no_i18n
libtool: link: clang -g -O2 iconv_no_i18n.o iconv.res -o iconv_no_i18n  ../srclib/libicrt.a ../lib/.libs/libiconv.a
libtool: link: clang -g -O2 iconv_no_i18n.o iconv.res -o iconv_no_i18n  ../srclib/libicrt.a ../lib/.libs/libiconv.a
iconv.resiconv.res: file not recognized: file format not recognized
: file not recognized: file format not recognized
clangclang: : error: linker command failed with exit code 1 (use -v to see invocation)error
: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Makefile:78: iconv_no_i18n] Error 1
make[2]: *** [Makefile:78: iconv_no_i18n] Error 1
make[2]: Leaving directory '/home/david/Workspace/hangover/build/libiconv32/src'
make[2]: Leaving directory '/home/david/Workspace/hangover/build/libiconv64/src'
make[1]: *** [Makefile:56: install] Error 2
make[1]: Leaving directory '/home/david/Workspace/hangover/build/libiconv64'
make[1]: *** [Makefile:56: install] Error 2
make[1]: Leaving directory '/home/david/Workspace/hangover/build/libiconv32'
make: *** [Makefile:80: build/x86_64-w64-mingw32/bin/libcharset-1.dll] Error 2
make: *** Waiting for unfinished jobs....
make: *** [Makefile:76: build/i686-w64-mingw32/bin/libcharset-1.dll] Error 2
AndreRH commented 3 years ago

when libtool is using clang here it should use i686-w64-mingw32-gcc, is that installed? Please read https://github.com/AndreRH/hangover/blob/master/README.md

Chaosdave34 commented 3 years ago

I think it is installed. (I also have a package installed which is named win-iocnv-mingw or something like that)

HoSnoopy commented 3 years ago

i686-w64-mingw32-gcc is installed and executable.

stefand commented 3 years ago

you need x86_64-w64-mingw32 too

HoSnoopy commented 3 years ago

x86_64-w64-mingw32-gcc is also installed and executable.

AndreRH commented 3 years ago

What does config.log say, why are the mingw compilers not picked up?

HoSnoopy commented 3 years ago

Ah, no. It doesnt pick up. Debian Buster/ARM64 . Do I need aarch64_64-mingw32 something? I cannot find in the repo.

AndreRH commented 3 years ago

x86_64-w64-mingw32-gcc (exactly this name) i686-w64-mingw32-gcc (exactly this name)

they are used to produce x86(_64) PE files, so no, you don't need an aarch64 version

could you pastebin the config.log please?

HoSnoopy commented 3 years ago

https://paste2.org/JUDZ42jF

stefand commented 3 years ago

This is wine's config.log, not libiconv

stefand commented 3 years ago

Hmm, did you maybe set CC=clang instead of HANGOVER_WINE_CC=clang?

Chaosdave34 commented 3 years ago

https://paste2.org/EKhNHOUO libiconv config.log

stefand commented 3 years ago

ew yeah, libiconv needs different configure arguments. Delete the build/libiconv folders and let the top level makefile do its job, or look in the top level makefile for the exact arguments (it sets the host to i686 mingw / x86_64 mingw and the install prefix to a private folder in build/ etc)

Chaosdave34 commented 3 years ago

Now libiconv workd but now qemu makes problems: make -C build/qemu make[1]: Verzeichnis „/home/pi/Workspace/hangover/build/qemu“ wird betreten make[1]: *** Keine Ziele. Schluss. make[1]: Verzeichnis „/home/pi/Workspace/hangover/build/qemu“ wird verlassen make: *** [Makefile:183: build/qemu/x86_64-windows-user/qemu-x86_64.exe.so] Fehler 2

AndreRH commented 1 year ago

irrelevant with new Hangover approach