Giter VIP home page Giter VIP logo

Comments (5)

FreddieChopin avatar FreddieChopin commented on May 27, 2024 1

BTW:

Needless to say, it takes quite some time

If you want to speed things up, be sure to use --skip-documentation --skip-nano-libraries - this will be ~2x faster than the regular build (and also a bit smaller).

from bleeding-edge-toolchain.

FreddieChopin avatar FreddieChopin commented on May 27, 2024

Well, the script is done in a way that it first builds the "native" compiler, then tries to cross-compile one for Windows. I guess that the part which does the "native" build has some hard-coded stuff which is not working properly when you try to force it to actually do a cross-compilation. So maybe it would be easier if you would try to modify the part of the script which actually cross-compiles the toolchain for Windows, to just do it for RPi? This would require some more steps than just changing the prefix from the one used by MinGW-W64 to your RPi toolchain, but would be probably doable. There are some differences in the build procedure itself, which are Windows-specific - for example building of libiconv, two versions of gdb, extracting python for windows and so on...

Another approach would be to find the parts which are forcing the build to be "native", which I guess would be at least these:

buildGmp ${buildNative} "" "--build=${hostTriplet} --host=${hostTriplet}"

For a cross build you need to have them different, not the same, for example see this line for Windows:

	buildGmp \
		${buildFolder} \
		${bannerPrefix} \
		"--build=${hostTriplet} --host=${triplet}"

Anyway - forcing the "native" part to do the cross-compilation would be hard, at least because the cross-compiler for ARM really needs to be run on the build machine, to compile the target libraries. That's why it would probably be much easier to modify the part which cross-compiles for Windows to do it for RPi.

from bleeding-edge-toolchain.

pellepl avatar pellepl commented on May 27, 2024

Thanks for the tip, I'll try the windows->rpi path.

Anyway - forcing the "native" part to do the cross-compilation would be hard, at least because the cross-compiler for ARM really needs to be run on the build machine, to compile the target libraries.

Yeah - I spent some time today realizing what you meant, the hard way. ;)

Again, thanks! I'll give it a go. You may close this issue if you want to - I'll post my findings here if I come up with something useful.

from bleeding-edge-toolchain.

FreddieChopin avatar FreddieChopin commented on May 27, 2024

As you wish (; Let me know if you face some other problems or just ask if something is not clear!

from bleeding-edge-toolchain.

Trass3r avatar Trass3r commented on May 27, 2024

If you want to speed things up, be sure to use --skip-documentation --skip-nano-libraries - this will be ~2x faster than the regular build (and also a bit smaller).

Trimming gcc/config/arm/t-rmprofile also helps a lot.

from bleeding-edge-toolchain.

Related Issues (16)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.