{"id":1582,"date":"2021-06-02T10:02:23","date_gmt":"2021-06-02T08:02:23","guid":{"rendered":"https:\/\/www.dreimer.de\/?p=1582"},"modified":"2021-06-02T15:36:41","modified_gmt":"2021-06-02T13:36:41","slug":"next-rosbe-funny-things-to-get-there","status":"publish","type":"post","link":"https:\/\/www.dreimer.de\/?p=1582","title":{"rendered":"Next RosBE&#8230; funny things to get there&#8230;"},"content":{"rendered":"\n<p>This post will be edited a few times I guess.<\/p>\n\n\n\n<p>I try to publically sum up all stuff we need to get a RosBE with a working amd64 compiler.<\/p>\n\n\n\n<p><strong>GCC<\/strong><\/p>\n\n\n\n<p>First we need plugin support inside GCC. This seems to be default on *nix, but Windows has a special hackish implementation for that.<\/p>\n\n\n\n<p>To use it we need to add &#8211;enable-plugin to the configure parameter list of both the 32 bit host and 64 bit guest cross compiler.<\/p>\n\n\n\n<p>We need a newer GCC OR fix two lines to make plugin support build at all:<\/p>\n\n\n\n<p>\/gcc\/c\/Make-lang.in<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p>&#8212; $(INSTALL_DATA) cc1$(exeext).a $(DESTDIR)\/$(plugin_resourcesdir)\/cc1$(exeext).a<br>++ $(INSTALL_DATA) cc1$(exeext).a $(DESTDIR)$(plugin_resourcesdir)\/cc1$(exeext).a<\/p>\n\n\n\n<p>\/gcc\/cp\/Make-lang.in<\/p>\n\n\n\n<p>&#8212; $(INSTALL_DATA) cc1plus$(exeext).a $(DESTDIR)\/$(plugin_resourcesdir)\/cc1plus$(exeext).a<br>++ $(INSTALL_DATA) cc1plus$(exeext).a $(DESTDIR)$(plugin_resourcesdir)\/cc1plus$(exeext).a&nbsp;<\/p>\n\n\n\n<p>( Already fixed upstream <a href=\"https:\/\/gcc.gnu.org\/git?p=gcc.git;a=blob;f=gcc\/c\/Make-lang.in;h=a1cdee87264bcccffd3806f1c82be1ece3570723;hb=HEAD#l168\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/gcc.gnu.org\/git?p=gcc.git;a=blob;f=gcc\/c\/Make-lang.in;h=a1cdee87264bcccffd3806f1c82be1ece3570723;hb=HEAD#l168<\/a> )<\/p>\n\n\n\n<p>To get GMP in a plugin supportive manner I decided to build it twice! Once GCC does that because gmp is in the source tarball and once for the hackish plugin support!<\/p>\n\n\n\n<p>Current buildtoolchain-mingw32.sh https:\/\/pastiebin.com\/60b7892f07a99<br>Current buildtoolchain-mingw32-amd64.sh https:\/\/pastiebin.com\/60b7894e66625<\/p>\n<\/div><\/div>\n\n\n\n<p><strong>Binutils<\/strong><\/p>\n\n\n\n<p>Newer one or applying that patch is mandatory: <a rel=\"noreferrer noopener\" href=\"https:\/\/sourceware.org\/git\/?p=binutils-gdb.git;a=commitdiff;h=d039200a7ee8ac170afbdc3b987af553c07fb6a3\" target=\"_blank\">https:\/\/sourceware.org\/git\/?p=binutils-gdb.git;a=commitdiff;h=d039200a7ee8ac170afbdc3b987af553c07fb6a3<\/a><\/p>\n\n\n\n<p><strong>Ninja<\/strong><\/p>\n\n\n\n<p>Revert <a href=\"https:\/\/github.com\/ninja-build\/ninja\/commit\/a3a5d60622eb7330b8d82ff6620d28e3b90c6848\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/ninja-build\/ninja\/commit\/a3a5d60622eb7330b8d82ff6620d28e3b90c6848<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This post will be edited a few times I guess. I try to publically sum up all stuff we need to get a RosBE with a working amd64 compiler. GCC First we need plugin support inside GCC. This seems to be default on *nix, but Windows has a special hackish implementation for that. To use [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[3,4],"tags":[],"class_list":["post-1582","post","type-post","status-publish","format-standard","hentry","category-reactos","category-rosbe"],"_links":{"self":[{"href":"https:\/\/www.dreimer.de\/index.php?rest_route=\/wp\/v2\/posts\/1582","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dreimer.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dreimer.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dreimer.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dreimer.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1582"}],"version-history":[{"count":9,"href":"https:\/\/www.dreimer.de\/index.php?rest_route=\/wp\/v2\/posts\/1582\/revisions"}],"predecessor-version":[{"id":1593,"href":"https:\/\/www.dreimer.de\/index.php?rest_route=\/wp\/v2\/posts\/1582\/revisions\/1593"}],"wp:attachment":[{"href":"https:\/\/www.dreimer.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1582"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dreimer.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1582"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dreimer.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1582"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}