Christian,
thanks for your reply. Unfortunately, adding LEON3 support to the tool_chain script is not that easy.
binutils 2.22 doesn't fully support LEON3 (missing CAS instruction). I therefore did a quick attempt of bumping the version numbers in the script to binutils 2.24 and gcc 4.8.2, which however fails with undefined type uint64_t errors in libstdc++v3.
I think there are basically three options for me:
1. Figure out how to compile the tool chain with the newer versions of binutils and gcc, which may, however, have uncertain effects on Genode (?). 2. Backport the missing LEON3 features to the versions currently used for the Genode tool chain. 3. Somehow work around the libc issues with the gaisler tool chain (if possible at all).
Do you have any comments on this? I guess I'd go for the second option unless you have any other suggestions.
Regards Johannes
On Tue, 5 Aug 2014 09:52:11 +0200 Christian Helmuth <christian.helmuth@...1...> wrote:
Hello Johannes,
We walked a long rocky road with third-party tool chains until we decided to go for our own. The main reason for issues with other tools was the lacking support for C++ without a full fledged libC runtime.
You may find our tool-chain script in tool/tool_chain, which officially supports x86 and arm. There are also traces of support for microblaze, but we did not test it years. Maybe you can add LEON3 to the script and get rid of those undefined references to libC symbols we do not provide in our runtime.
Regards