mono-wasm
mono-wasm copied to clipboard
Error Compiling mono-compiler --host=x86_64-pc-linux-gnu
I trying Window 10 Pro_x64 + WSL + Ubuntu 16.04
$ cd /mnt/d/Dev/mono-wasm/
$ git clone [email protected]:lrz/mono-wasm-mono.git mono-compiler
$ cd mono-compiler
$ ./autogen.sh --host=x86_64-pc-linux-gnu
--with-cross-offsets=offsets-wasm32.h
CFLAGS="-DCOMPILE_WASM32
-DMONO_CROSS_COMPILE"
CXXFLAGS="-DCOMPILE_WASM32
-DMONO_CROSS_COMPILE"
--disable-boehm
--with-sigaltstack=no
--enable-llvm
--enable-llvm-runtime
--with-llvm=../llvm-mono-build
--disable-btls
--with-runtime_preset=testing_aot_full
$ cd eglib
$ make
$ cd ../mono
$ make
mini-amd64.c: In function 'mono_arch_emit_epilog':
mini-amd64.c:7080:54: warning: ISO C forbids passing argument 2 of 'mono_arch_instrument_epilog' between function pointer and 'void *' [-Wpedantic]
code = (guint8 *)mono_arch_instrument_epilog (cfg, mono_trace_leave_method, code, TRUE);
^
In file included from mini-amd64.c:19:0:
mini.h:2714:11: note: expected 'void ' but argument is of type 'void ()(MonoMethod ) {aka void ()(struct MonoMethod *)}'
void *mono_arch_instrument_epilog (MonoCompile *cfg, void *func, void *p, gboolean enable_arguments);
^
In file included from ../../mono/arch/amd64/amd64-codegen.h:137:0,
from ../../mono/utils/mono-context.h:210,
from ../../mono/utils/mono-stack-unwinding.h:12,
from ../../mono/utils/mono-threads.h:15,
from ../../mono/metadata/handle.h:23,
from ../../mono/metadata/threads-types.h:19,
from ../../mono/metadata/object-internals.h:13,
from mini.h:28,
from mini-amd64.c:19:
../../mono/metadata/abi-details.h:55:42: error: 'MONO_OFFSET_MonoLMF_rbp' undeclared (first use in this function)
#define MONO_STRUCT_OFFSET(struct,field) MONO_OFFSET ## struct ## _ ## field
^
../../mono/arch/amd64/../x86/x86-codegen.h:274:38: note: in definition of macro 'x86_imm_emit32'
x86_imm_buf imb; imb.val = (int) (imm);
^
../../mono/arch/amd64/amd64-codegen.h:339:3: note: in expansion of macro 'amd64_membase_emit'
amd64_membase_emit ((inst), (reg), (basereg), (disp));
^
../../mono/arch/amd64/amd64-codegen.h:352:3: note: in expansion of macro 'amd64_mov_reg_membase_body'
amd64_mov_reg_membase_body((inst), (reg), (basereg), (disp), (size));
^
mini-amd64.c:7103:4: note: in expansion of macro 'amd64_mov_reg_membase'
amd64_mov_reg_membase (code, AMD64_RBP, cfg->frame_reg, lmf_offset + MONO_STRUCT_OFFSET (MonoLMF, rbp), 8);
^
mini-amd64.c:7103:73: note: in expansion of macro 'MONO_STRUCT_OFFSET'
amd64_mov_reg_membase (code, AMD64_RBP, cfg->frame_reg, lmf_offset + MONO_STRUCT_OFFSET (MonoLMF, rbp), 8);
^
mini-amd64.c: In function 'get_delegate_invoke_impl':
mini-amd64.c:7643:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (i = 0; i < param_count; ++i) {
^
Makefile:2679: recipe for target 'libmini_la-mini-amd64.lo' failed
make[2]: *** [libmini_la-mini-amd64.lo] Error 1
make[2]: Leaving directory '/mnt/d/Dev/mono-wasm/mono-compiler/mono/mini'
Makefile:1344: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/mnt/d/Dev/mono-wasm/mono-compiler/mono/mini'
Makefile:455: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
mono-wasm/mono-compiler/mono/metadata/abi-details.h
#ifdef USED_CROSS_COMPILER_OFFSETS #define MONO_STRUCT_OFFSET(struct,field) MONO_OFFSET_ ## struct ## _ ## field #else #if defined(HAS_CROSS_COMPILER_OFFSETS) || defined(MONO_CROSS_COMPILE) #define MONO_STRUCT_OFFSET(struct,field) (MONO_OFFSET_ ## struct ## _ ## field == -1, G_STRUCT_OFFSET (struct,field)) #else #define MONO_STRUCT_OFFSET(struct,field) G_STRUCT_OFFSET (struct,field) #endif #endif