From: Zeno D. <zd...@gm...> - 2011-01-20 08:17:58
|
Hi I installed mingw on my Linux box in my home directory in mingw32 by sh x86-mingw32-build.sh How do I run "mingw-get update" on Linux? I also do not see any mingw-make in my mingw32 directory on my Linux box. Thank you for your Feedback. Best Zeno |
From: Keith M. <kei...@nt...> - 2011-01-20 21:32:22
|
On 20/01/11 08:17, Zeno Davatz wrote: > I installed mingw on my Linux box in my home directory in mingw32 by > > sh x86-mingw32-build.sh Did that run successfully for you? All the way through? I guess it would if you don't try to update the configuration for latest versions, but I did notice that it has succumbed to some bit-rot over the past couple of years. > How do I run "mingw-get update" on Linux? I've never thought about it, as a tool for managing a cross-compiler installation. It will run under Wine -- that's how I test it -- so I guess you could tweak its profile.xml to map into the cross-compiler installation, for the purpose of adding library components, but I don't know how useful that might be. I normally either build my cross-dev libraries from source, or just manually download and unpack the -dev tarballs into the appropriate cross-tool directories. > I also do not see any mingw-make in my mingw32 directory on my Linux > box. Nor should you; you simply use the natively hosted make, same as you would for Linux applications development. -- Regards, Keith. |
From: Zeno D. <zd...@gm...> - 2011-01-21 07:21:48
|
Dear Keith On Thu, Jan 20, 2011 at 10:32 PM, Keith Marshall <kei...@nt...> wrote: > On 20/01/11 08:17, Zeno Davatz wrote: >> I installed mingw on my Linux box in my home directory in mingw32 by >> >> sh x86-mingw32-build.sh > > Did that run successfully for you? All the way through? I guess it > would if you don't try to update the configuration for latest versions, > but I did notice that it has succumbed to some bit-rot over the past > couple of years. Yes, this ran right through. >> How do I run "mingw-get update" on Linux? > > I've never thought about it, as a tool for managing a cross-compiler > installation. It will run under Wine -- that's how I test it -- so I > guess you could tweak its profile.xml to map into the cross-compiler > installation, for the purpose of adding library components, but I don't > know how useful that might be. I normally either build my cross-dev > libraries from source, or just manually download and unpack the -dev > tarballs into the appropriate cross-tool directories. Ok, I understand. Would be nice though if it would work on Linux as well, works well on Windows Vista. >> I also do not see any mingw-make in my mingw32 directory on my Linux >> box. > > Nor should you; you simply use the natively hosted make, same as you > would for Linux applications development. Ok. But then I do not understand something. How do I enter my Cross-Compilation Environment then on Linux? It seems the setup is quite different from Windows. I wan't to try to compile mod_ruby on Linux for Windows. Any hints are welcome. Best Zeno |
From: Nathan S. <re...@gm...> - 2011-01-21 09:09:53
|
On Fri, Jan 21, 2011 at 1:21 AM, Zeno Davatz <zd...@gm...> wrote: > Ok. But then I do not understand something. How do I enter my > Cross-Compilation Environment then on Linux? It seems the setup is > quite different from Windows. I wan't to try to compile mod_ruby on > Linux for Windows. The description for MSYS at http://www.mingw.org/wiki/MSYS states: -- MSYS is a collection of GNU utilities such as bash, make, gawk and grep to allow building of applications and programs which depend on traditionally UNIX tools to be present. As MSYS can be considered the compilation environment when using MinGW on Windows, it makes sense that it (MSYS) is not necessary on Linux (which is Unix-like and mimics many UNIX concepts). Your Linux system has all (likely more) of the capability that MSYS provides as a compilation environment. As far as getting this environment setup, that depends upon the distribution of Linux you are using (I'll assume you're using a popular distribution since we're here). I'm most familiar with Debian's provisions for cross-compilation with MinGW; it provides packages for the MinGW runtime (mingw32-runtime) and the MinGW associated binutils (mingw32-binutils). There is also a package providing x86-64 (AMD64 and Intel 64 as far as I'm aware) cross-compilation support (mingw-w64). There are different ways to build with the cross-compiler as opposed to the native compiler, but at it's core it's a simple as described in the GCC manual at http://gcc.gnu.org/onlinedocs/gcc-4.5.2/gcc/Target-Options.html#Target-Options: -- The usual way to run GCC is to run the executable called gcc, or <machine>-gcc when cross-compiling, or <machine>-gcc-<version> to run a version other than the one that was installed last. Sometimes this is inconvenient, so GCC provides options that will switch to another cross-compiler or version. The two invocation options are "-b <machine>" and "-V <version>", but as stated in the manual, it's generally simpler to invoke the properly named executable rather than using the options. On Debian, the executables are prefixed with "i586-mingw32msvc-" for the x86 architecture, and "amd64-mingw32msvc-" for the x86-64 architecture. Debian also provides a directory in /usr for each cross-compiler. In this directory are copies of the aforementioned prefix-named executables and associated libraries, but without the prefix. This allows one to prepend one of these directories on the $PATH and use the cross-compiler without specifying the prefix-named executables or supplying invocation options (this is handy for outdated/poorly written/porting of makefiles, for instance). I hope this helps with clarification; the information here should be generally sufficient across popular distributions, or even if you've built/installed the cross-compiler yourself. Good luck, Nate |
From: Zeno D. <zd...@gm...> - 2011-01-21 10:35:14
|
Dear Nate Thanks! Will try to follow the steps. I am on Gentoo-Linux. Best Zeno On Fri, Jan 21, 2011 at 10:09 AM, Nathan Schulte <re...@gm...> wrote: > On Fri, Jan 21, 2011 at 1:21 AM, Zeno Davatz <zd...@gm...> wrote: >> Ok. But then I do not understand something. How do I enter my >> Cross-Compilation Environment then on Linux? It seems the setup is >> quite different from Windows. I wan't to try to compile mod_ruby on >> Linux for Windows. > > The description for MSYS at http://www.mingw.org/wiki/MSYS states: -- > MSYS is a collection of GNU utilities such as bash, make, gawk and > grep to allow building of applications and programs which depend on > traditionally UNIX tools to be present. > > As MSYS can be considered the compilation environment when using MinGW > on Windows, it makes sense that it (MSYS) is not necessary on Linux > (which is Unix-like and mimics many UNIX concepts). Your Linux system > has all (likely more) of the capability that MSYS provides as a > compilation environment. As far as getting this environment setup, > that depends upon the distribution of Linux you are using (I'll assume > you're using a popular distribution since we're here). I'm most > familiar with Debian's provisions for cross-compilation with MinGW; it > provides packages for the MinGW runtime (mingw32-runtime) and the > MinGW associated binutils (mingw32-binutils). There is also a package > providing x86-64 (AMD64 and Intel 64 as far as I'm aware) > cross-compilation support (mingw-w64). > > There are different ways to build with the cross-compiler as opposed > to the native compiler, but at it's core it's a simple as described in > the GCC manual at > http://gcc.gnu.org/onlinedocs/gcc-4.5.2/gcc/Target-Options.html#Target-Options: > -- > The usual way to run GCC is to run the executable called gcc, or > <machine>-gcc when cross-compiling, or <machine>-gcc-<version> to run > a version other than the one that was installed last. Sometimes this > is inconvenient, so GCC provides options that will switch to another > cross-compiler or version. > > The two invocation options are "-b <machine>" and "-V <version>", but > as stated in the manual, it's generally simpler to invoke the properly > named executable rather than using the options. On Debian, the > executables are prefixed with "i586-mingw32msvc-" for the x86 > architecture, and "amd64-mingw32msvc-" for the x86-64 architecture. > Debian also provides a directory in /usr for each cross-compiler. In > this directory are copies of the aforementioned prefix-named > executables and associated libraries, but without the prefix. This > allows one to prepend one of these directories on the $PATH and use > the cross-compiler without specifying the prefix-named executables or > supplying invocation options (this is handy for outdated/poorly > written/porting of makefiles, for instance). > > I hope this helps with clarification; the information here should be > generally sufficient across popular distributions, or even if you've > built/installed the cross-compiler yourself. > > Good luck, > Nate > > ------------------------------------------------------------------------------ > Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)! > Finally, a world-class log management solution at an even better price-free! > Download using promo code Free_Logger_4_Dev2Dev. Offer expires > February 28th, so secure your free ArcSight Logger TODAY! > http://p.sf.net/sfu/arcsight-sfd2d > _______________________________________________ > MinGW-users mailing list > Min...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li...?subject=unsubscribe > |
From: Raffaello D. Di N. <fas...@gm...> - 2011-01-21 19:21:43
|
2011/1/21 Zeno Davatz <zd...@gm...>: > Will try to follow the steps. I am on Gentoo-Linux. Gentoo Linux has built-in support for cross-compiling, named crossdev, which lets you emerge ebuilds (for example, zlib) for another CHOST, such as i586-mingw32, by providing you an alternate emerge command (i.e. emerge-i586-mingw32) which will keep all the cross-compiled tree into its own hierarchy in /usr/${CHOST}. With that, you can use the Portage system directly instead of mingw-get. As long as the mingw32 target is supported by upstream for a package, an ebuild should build just fine by emerging it with the emerge-${CHOST}. See [1] for more details about cross-mingw32, or [2] for more info on setting up a generic crossdev environment. The official Gentoo Handbook also has information about crossdev (obviously) at [3], but it’s clearly aimed at embedded cross-building; it still offers plenty of useful advices though. [1] http://en.gentoo-wiki.com/wiki/Mingw [2] http://en.gentoo-wiki.com/wiki/Crossdev [3] http://www.gentoo.org/proj/en/base/embedded/handbook/ PS: it looks like my earlier submission of this message was rejected by SF, although I’m sure I was regularly subscribed; in any case, I had to subscribe again. If you see two copies of this message, that’s why. |
From: Zeno D. <zd...@gm...> - 2011-01-22 19:22:04
|
Dear Raffaello Thank you for the Feedback. On Fri, Jan 21, 2011 at 8:21 PM, Raffaello D. Di Napoli <fas...@gm...> wrote: > 2011/1/21 Zeno Davatz <zd...@gm...>: >> Will try to follow the steps. I am on Gentoo-Linux. > > Gentoo Linux has built-in support for cross-compiling, named crossdev, > which lets you emerge ebuilds (for example, zlib) for another CHOST, > such as i586-mingw32, by providing you an alternate emerge command > (i.e. emerge-i586-mingw32) which will keep all the cross-compiled tree > into its own hierarchy in /usr/${CHOST}. > > With that, you can use the Portage system directly instead of > mingw-get. As long as the mingw32 target is supported by upstream for > a package, an ebuild should build just fine by emerging it with the > emerge-${CHOST}. > > See [1] for more details about cross-mingw32, or [2] for more info on > setting up a generic crossdev environment. The official Gentoo > Handbook also has information about crossdev (obviously) at [3], but > it’s clearly aimed at embedded cross-building; it still offers plenty > of useful advices though. > > [1] http://en.gentoo-wiki.com/wiki/Mingw > [2] http://en.gentoo-wiki.com/wiki/Crossdev > [3] http://www.gentoo.org/proj/en/base/embedded/handbook/ > > > PS: it looks like my earlier submission of this message was rejected > by SF, although I’m sure I was regularly subscribed; in any case, I > had to subscribe again. If you see two copies of this message, that’s > why. I was aware of that but your inputs are definitely Added Value! Sometimes installing from source is easier on Gentoo. ;) Best Zeno |