rustc_codegen_gcc: How to build for i686-unknown-linux-gnu?

Hello, I would like to build a x86 only binary. I tried to build libgccjit multiple times but I failed. So I got errors like:

libgccjit.so: error: gcc_jit_types value unsupported on this target: 32

or

libgccjit.so: error: gcc_jit_block_end_with_return: mismatching types: return of (unsigned long long)1 (type: unsigned long long) in function _RINvNtCs1TI45VtEMUH_4core3mem7size_ofaEB4_ (return type: __uint32_t)

Can you please help me?

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 27 (13 by maintainers)

Most upvoted comments

So, it seems to me that @bjorn3 is right:

LLVM tries to be compatible with GCC/GAS, but because of a license incompatibility (Apache-2.0 WITH LLVM-exception vs GPL-3.0) LLVM can’t copy the parser code from GAS and instead has to write it from scratch while attempting to stay compatible with all weirdness.

As such, this is an incompatibility between the LLVM and GCC codegen and won’t be fixed. The library source code should probably be fixed instead.

(Linking the issue you opened for posterity.)