I'm currently testing Mono in archlinux on ARMv7h. For a start, I tested this simple program:
$this->bbcode_second_pass_code('', '// test.cs
using System;
public class Test {
public static void Main(string[] args) {
Console.WriteLine("I'm working.");
}
}')
I use Mono as a native package installed via pacman, not cross-compiled. When run, it behaves as intended:
$this->bbcode_second_pass_code('', 'mcs test.cs
mono test.exe
I'm working.')
When I try to bundle this assembly using mkbundle, it compiles without any errors:
$this->bbcode_second_pass_code('', 'mkbundle --deps test.exe -o test_standalone
OS is: Linux
Sources: 1 Auto-dependencies: True
embedding: /home/minx/usb/cs/test.exe
embedding: /usr/lib/mono/4.5/mscorlib.dll
Compiling:
as -o temp.o temp.s
cc -ggdb -o test_standalone -Wall temp.c `pkg-config --cflags --libs mono-2` temp.o
Done')
/usb/ is a mounted external usb drive. mkbundleis invoked as root. When I try to run the result binary:
$this->bbcode_second_pass_code('', './test_standalone
Native stacktrace:
Debug info from gdb:
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.')
and returns to the shell. The binary doesn't give any additional info. Did I miss a flag for this specific architecture?