Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on
GitHub to continue tracking issues. Bugzilla will remain
available for reference in read-only mode. We will continue to work
on open Bugzilla bugs, copy them to the new locations
as needed for follow-up, and add the new items under Related
Our sincere thanks to everyone who has contributed on this bug
tracker over the years. Thanks also for your understanding as we
make these adjustments and improvements for the future.
Please create a new report on
GitHub or Developer Community with
your current version information, steps to reproduce, and relevant error
messages or log files if you are hitting an issue that looks similar to
this resolved bug and you do not yet see a matching new report.
I have seen some news dating back to March that MONO has been ported for MIPS 64bit.
Couple questions if I may ask:
1. Is their a special fork/branch for this port, or is it inclusive in the standard source download for MONO?
2. What compile flags/options need to be set for proper compilation?
Any assistance/guidance would be greatly appreciated.
Board/Chipset: CAVIUM OCTEON II (Mips 64bit) http://www.caviumnetworks.com/OCTEON_II_MIPS64.html
We have attempted multiple GIT versions, and tried compiling, but not having any luck. I see references (mailing lists) to the MIPS 64 patches being integrated in 2.11.x, but not having any luck in getting MONO to compile.
Snippet from one of our devs:
" Under mips it is expecting the SIZEOF_REGISTER == 4, for SIZEOF_REGISTER == 8 and target
architecture is mips then the build fails with an error "Not imeplemented"
In mono/io-layer/atomic.h encountered an error "error: #error "Not implemented."". I just tried
to proceed commenting out #error check, but I got error "#error "Implement mono-context for the current arch""
in the file "mono/utils/mono-context.h". There wasn't any context defined for MIPS64.
#elif ((defined(__mips__) && !defined(MONO_CROSS_COMPILE)) || (defined(TARGET_MIPS))) && SIZEOF_REGISTER == 4"
Also tried compiling as MIPS32:
"And could not able to compile for 32-bit using WRL 64bit compiler with compiler flags -mgp32, -mabi=32 or -mabi=n32. I got the below error. " error: '-mgp32' used with a 64-bit ABI"
Is their anyone who can provide any insight getting MIPS64 compiling?
Is their anyone who is familiar enough with this, that could in fact provide some paid consulting services if that be the case to get it to a point of compiling. This based on an assumption that most of the work/patches already exist, and may need to just be applied, or limited modification?
Thanks for your time and reviewing this and hope some progress/insight can be made.
Some additional information:
Please find below the compiler configuration used and attached the config.log for your reference.
./configure --host=mips64-target-linux-gnu --target=mips64-target-linux-gnu --build=x86_64-crosscompile-linux-gnu mono_cv_uscore=no --with-tls=pthread --with-sigaltstack=no
export CROSSOPTS="--host=mips64-target-linux-gnu --target=mips64-target-linux-gnu --build=x86_64-crosscompile-linux-gnu"
It is Big endian.
Please find ELF details
Magic: 7f 45 4c 46 02 02 01 00 00 00 00 00 00 00 00 00
Data: 2's complement, big endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: REL (Relocatable file)
Machine: MIPS R3000
Only MIPS32 support was completed, and due to the large variety between MIPS chips, mono might only work on a subset of chips.
-> WONTFIX for now.