WebGHC / wasm-cross

Nix expressions for cross compiling to WebAssembly
141 stars 5 forks source link

musl sizeof(long double) #2

Closed ElvishJerricco closed 7 years ago

ElvishJerricco commented 7 years ago

In the configure phase of musl for wasm32, you get this error:

checking whether compiler's long double definition matches float.h... no
./configure: error: unsupported long double type

It is because of this part of musl's configure script. It seems that Clang thinks long double has size 16, and musl is expecting it to be 8.

ElvishJerricco commented 7 years ago

Looks like emscripten solves this with compiler primitives. It might be worth using their libc, but that could incur a bunch of their runtime stuff, which would be a pain to integrate.

luxcnis commented 2 years ago

hi Elvish, I am now trying to build openwork for a mips board on my macOS Monterey. I am also getting stuck to this issue. My debugging information is as follows, which is the same with you mentioned in this issue. I am not sure about your solution suggestions. Would you please give me some hints for my problem? Thanks a lot.

using compiler runtime libraries: -lgcc -lgcc_eh checking preprocessor condition __mips_isa_rev >= 6... false checking preprocessor condition _MIPSEL || MIPSEL || MIPSEL... false checking preprocessor condition mips_soft_float... false checking whether compiler's long double definition matches float.h... no /Volumes/Dev/2K1000/loongwrt-loongson64-3.10/build_dir/toolchain-mips_mips64_64_gcc-7.4.0_musl/musl-1.1.22/configure: error: unsupported long double type make[3]: *** [/Volumes/Dev/2K1000/loongwrt-loongson64-3.10/build_dir/toolchain-mips_mips64_64_gcc-7.4.0_musl/musl-1.1.22/.configured] Error 1 make[3]: Leaving directory `/Volumes/Dev/2K1000/loongwrt-loongson64-3.10/toolchain/musl' time: toolchain/musl/compile#0.52#0.62#1.53