This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Monday 27 April 2009 13:48:48 Remy Bohmer wrote: > > Hello, > > Thanks for your answer. > > >> I am currently using crosstool-ng to build a cross-toolchain for my > >> target (target=x86-bare, host=x86-linux, build=x86-linux) > >> Now I also need the same toolchain that can run on a Windows host > >> (target=x86-bare, host=x86-mingw, build=x86-linux) > > > > That's a canadian-cross, and crosstool-NG does not yet handle this > > case. > > I know... not yet! > > > > > But it should be fine with: > > ?host=x86-mingw, build=x86-mingw, target=x86-bare > > And this is what I wanted to prevent.... > I prefer building on Linux, one build system for all platforms and > tools; usually cross-compiling Linux stuff on a Windows box is just > pain. Unfortunately there are application engineers that are addicted > to Windows for whom I need a cross-compiler, so let's try to build one > on Linux... > I did it before (a few years ago) with my own set of dirty scripts > which needs severe update. So I wanted to get it all going inside > crosstool-ng. Back then I did it with first building the linux hosted > toolchain, and finally replace every executable by its Windows > counterpart by only building binutils and gcc for mingw. I was > wondering if such a route was still possible, and if so: how to > integrate that in crosstool-ng? > > > Also, please note that 1.4.0 can now be used under Cygwin. > > If you can't build under mingw, then maybe Cygwin would be a good > > fallback/workaround... > > Cygwin compiles slower and is annoying if make tooling is used that > works outside the cygwin environment (and that do not understand the > cygwin path-naming). > > >> Is there an lightweight way possible to make crosstool-ng build only > >> the win32 executables by using a mingw cross-compiler, and using the > >> linux-hosted-toolchain-build-results as starting point? If so, where > >> in the build process ct-ng performs could this be added? > >> I guess, as mingw cross-compiler the i586-mingw32msvc-gcc from Ubuntu > >> can be used... > > > > Unfortunately, canadian-cross is not yet supported. > > I know it is not supported, and I wanted to do something about the > 'not yet' part... > > > I don't have enough > > time to test it, but most of the infrastructure should already be here. > > Most probably, a matter of: > > - set "Paths and misc options" --> "Experimental" (to see next option) > > - set "Toolchain options" --> "Type" --> "Canadian" > > - set "Toolchain options" --> "Host system" --> "Tuple" > > If I start using it, crosstool-ng complains about 'no-code' > So, where to start to implement it nicely? (Sorry if the mailer mangles the following lines...) # rep -nr -B7 -A2 -E 'No code|CT_TOOLCHAIN_TYPE' scripts/ -- scripts/crosstool-NG.sh.in-294- # Determine build system if not set by the user scripts/crosstool-NG.sh.in-295- CT_Test "You did not specify the build system. That's OK, I can guess..." -z "${CT_BUILD}" scripts/crosstool-NG.sh.in-296- case "${CT_BUILD}" in scripts/crosstool-NG.sh.in-297- "") CT_BUILD=$("${CT_BUILD_PREFIX}gcc${CT_BUILD_SUFFIX}" -dumpmachine);; scripts/crosstool-NG.sh.in-298- esac scripts/crosstool-NG.sh.in-299- scripts/crosstool-NG.sh.in-300- # Prepare mangling patterns to later modify BUILD and HOST (see below) scripts/crosstool-NG.sh.in:301: case "${CT_TOOLCHAIN_TYPE}" in scripts/crosstool-NG.sh.in-302- cross) scripts/crosstool-NG.sh.in-303- CT_HOST="${CT_BUILD}" scripts/crosstool-NG.sh.in-304- build_mangle="build_" scripts/crosstool-NG.sh.in-305- host_mangle="build_" scripts/crosstool-NG.sh.in-306- ;; scripts/crosstool-NG.sh.in:307: *) CT_Abort "No code for '${CT_TOOLCHAIN_TYPE}' toolchain type!" scripts/crosstool-NG.sh.in-308- ;; scripts/crosstool-NG.sh.in-309- esac -- scripts/crosstool-NG.sh.in-392- # Carefully add paths in the order we want them: scripts/crosstool-NG.sh.in-393- # - first try in ${CT_PREFIX_DIR}/bin scripts/crosstool-NG.sh.in-394- # - then try in ${CT_CC_CORE_SHARED_PREFIX_DIR}/bin scripts/crosstool-NG.sh.in-395- # - then try in ${CT_CC_CORE_STATIC_PREFIX_DIR}/bin scripts/crosstool-NG.sh.in-396- # - fall back to searching user's PATH scripts/crosstool-NG.sh.in-397- # Of course, neither cross-native nor canadian can run on BUILD, scripts/crosstool-NG.sh.in-398- # so don't add those PATHs in this case... scripts/crosstool-NG.sh.in:399: case "${CT_TOOLCHAIN_TYPE}" in scripts/crosstool-NG.sh.in-400- cross) export PATH="${CT_PREFIX_DIR}/bin:${CT_CC_CORE_SHARED_PREFIX_DIR}/bin:${CT_CC_CORE_STATIC_PREFIX_DIR}/bin:${PATH}";; scripts/crosstool-NG.sh.in-401- *) ;; Lines 307 and 401 seem like good candidates to start with. Regards, Yann E. MORIN. -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +0/33 662376056 | Software Designer | \ / CAMPAIGN | ___ | | --==< ^_^ >==-- `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | `------------------------------^-------^------------------^--------------------' -- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |