Difference between revisions of "Building MINGW-w64"
ThePhysicist (talk | contribs) (→Add Mingw-w64 header set) |
ThePhysicist (talk | contribs) (→Building binutils) |
||
Line 36: | Line 36: | ||
From the build directory run the binutils configure script: | From the build directory run the binutils configure script: | ||
../../src/binutils/configure --target=x86_64-w64-mingw32 --with-sysroot=/RosBE64 --prefix=/RosBE64 | ../../src/binutils/configure --target=x86_64-w64-mingw32 --with-sysroot=/RosBE64 --prefix=/RosBE64 | ||
− | --disable-multilib | + | --disable-multilib --with-libiconv=/lib/libiconv.la |
Now build the whole stuff. | Now build the whole stuff. |
Revision as of 17:42, 7 April 2010
... for idiots. This guide is provided for those who have no clue how to compile gcc, but still want to do it. It's a reference, just follow the steps and you get what you want. There's no support for special wishes ;-)
Contents
Setting up the build environment
Download and install MSYS. You will need the following packages:
- binutils-2.20.1-2-mingw32-bin.tar.gz
- bison-2.4.1-1-msys-1.0.11-bin.tar.lzma
- coreutils-5.97-2-msys-1.0.11-bin.tar.lzma
- flex-2.5.35-1-msys-1.0.11-bin.tar.lzma
- gettext-0.17-1-mingw32-dev.tar.lzma
- grep-2.5.4-1-msys-1.0.11-bin.tar.lzma
- sed-4.2.1-1-msys-1.0.11-bin.tar.lzma
...
Download all packages and extract them into c:\MSYS (or similar). You can unpack the .tar.lzma files using the latest version of 7zip.
Getting the sources
Download all the sources into subfolders of /home/YourName/src
- binutils -> home/YourName/src/binutils
- gcc-core + gcc-g++ -> home/YourName/src/gcc
- mingw-w64
Building
Building binutils
Create a build subdirectory for binutils:
cd build mkdir binutils cd binutils
From the build directory run the binutils configure script:
../../src/binutils/configure --target=x86_64-w64-mingw32 --with-sysroot=/RosBE64 --prefix=/RosBE64 --disable-multilib --with-libiconv=/lib/libiconv.la
Now build the whole stuff.
make
Finally install it into the designated directory.
make install
Add Mingw-w64 header set
Copy the mingw-w64-headers/include directory to /RosBE64/x86_64-w64-mingw32
Create a symlinks for gcc.
ln -s /RosBE64/x86_64-w64-mingw32 /RosBE64/mingw'
Building gcc-core
Emter into the build directory:
cd .. mkdir gcc cd gcc
Now run the configure script:
../../src/gcc/configure --target=x86_64-w64-mingw32 --prefix=/RosBE64 --with-sysroot=/RosBE64 --enable-languages=c,c++ --disable-multilib
Compile the gcc-core
make all-gcc
And install it
make install-gcc
Finally add it to the PATH variable.
PATH=$PATH:/RosBE64/bin ; export PATH
Building the crt
Create a build directory.
cd .. mkdir mingw-w64-crt cd mingw-w64-crt
Run the configure script
../../src/mingw-w64/mingw-w64-crt/configure --host=x86_64-w64-mingw32 --prefix=/RosBE64 --with-sysroot=/RosBE64
Compile
make
And install
make install
Building the rest of gcc
Enter into the gcc build directory.
cd .. cd gcc
And compile the rest.
make make install