Revision history for DevBuildWindows


Revision [21747]

Last edited on 2017-03-15 08:59:20 by CountingPine [Fix MinGW-w64 link]
Additions:
In this guide we will use a 32bit or 64bit [[http://mingw-w64.sourceforge.net|MinGW-w64]] toolchain to build the 32bit or 64bit version of FB, respectively. Visit [[http://sourceforge.net/projects/mingw-w64/files/]] and enter the [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/|Toolchains targetting Win64]] or [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/|Toolchains targetting Win32]] directory, depending on whether you want to compile a 32bit or 64bit version of FB. Enter the ##Personal Builds/mingw-builds/## subdirectory, choose the latest gcc version, then enter the ##threads-win32/sjlj/## subdirectory and download the toolchain package from there.
Deletions:
In this guide we will use a 32bit or 64bit [[mingw-w64.sourceforge.net|MinGW-w64]] toolchain to build the 32bit or 64bit version of FB, respectively. Visit [[http://sourceforge.net/projects/mingw-w64/files/]] and enter the [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/|Toolchains targetting Win64]] or [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/|Toolchains targetting Win32]] directory, depending on whether you want to compile a 32bit or 64bit version of FB. Enter the ##Personal Builds/mingw-builds/## subdirectory, choose the latest gcc version, then enter the ##threads-win32/sjlj/## subdirectory and download the toolchain package from there.


Revision [20785]

Edited on 2016-03-12 13:11:58 by fxm [Formatting]
Additions:
-Copy to ##""C:\fbc\bin\win32""## (32bit) or ##""C:\fbc\bin\win64""## (64bit):
-For 64bit, or for using -gen gcc on 32bit, gcc.exe and cc1.exe are needed too.
-Copy to ##""C:\fbc\lib\win32""## (32bit) or ##""C:\fbc\lib\win64""## (64bit):
Deletions:
1) Copy to ##""C:\fbc\bin\win32""## (32bit) or ##""C:\fbc\bin\win64""## (64bit):
1) For 64bit, or for using -gen gcc on 32bit, gcc.exe and cc1.exe are needed too.
1) Copy to ##""C:\fbc\lib\win32""## (32bit) or ##""C:\fbc\lib\win64""## (64bit):


Revision [19979]

Edited on 2016-02-10 15:47:58 by DkLwikki [Update link format]
Additions:
To compile a new version of FB, you first need to [[DevGettingTheSourceCode|get the FB source code]]. The following assumes that you have a directory called ##fbc##, containing the latest FB source code.
In this guide we will use a 32bit or 64bit [[mingw-w64.sourceforge.net|MinGW-w64]] toolchain to build the 32bit or 64bit version of FB, respectively. Visit [[http://sourceforge.net/projects/mingw-w64/files/]] and enter the [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/|Toolchains targetting Win64]] or [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/|Toolchains targetting Win32]] directory, depending on whether you want to compile a 32bit or 64bit version of FB. Enter the ##Personal Builds/mingw-builds/## subdirectory, choose the latest gcc version, then enter the ##threads-win32/sjlj/## subdirectory and download the toolchain package from there.
The needed MSYS packages can be downloaded and extracted by using the latest version of the [[http://sourceforge.net/projects/mingw/files/Installer/|mingw-get setup from the MinGW.org project]].
This should install the commonly needed MSYS components. We do not want to install the ##mingw32-base## or ##mingw32-gcc-*## packages here, because we are using an external ""MinGW-w64"" toolchain instead of the ""MinGW.org"" one. If you do not wish to use the ""MinGW.org"" installer, you can also download the ""MinGW""/MSYS packages manually from the [[http://sourceforge.net/projects/mingw/files/|MinGW project's download site]].
The FB rtlib source code depends on [[http://sourceware.org/libffi/|libffi]] headers (##ffi.h## and ##ffitarget.h##) to be available in the gcc toolchains include directory (##""C:\MinGW-w64\i686-w64-mingw32\include""## for 32bit ""MinGW-w64"" and ##""C:\MinGW-w64\x86_64-w64-mingw32\include""## for 64bit ""MinGW-w64""). Furthermore, the ##libffi.a## library will be needed later when compiling FB programs that use [[KeyPgThreadCall|ThreadCall]].
Prebuilt versions of libffi are available from the [[http://sourceforge.net/projects/fbc/files/Binaries%20-%20Windows/Libraries/|fbc downloads area]].
We will need a working FB-win32 installation to bootstrap the new FB compiler. If you do not have FB-win32 installed yet, download the latest ##""FreeBASIC-X.XX.X-win32""## release from the [[http://sourceforge.net/projects/fbc/files/Binaries%20-%20Windows/|FB's download site]]. It should be extracted somewhere like ##""C:\FreeBASIC-X.XX.X-win32""##.
If you want to create a [[DevNormalVsStandalone|traditional standalone]] FB-win32 setup like the one from the ##""FreeBASIC-X.XX.X-win32""## release package, you need to tell FB's makefile by setting the ENABLE_STANDALONE variable. Furthermore, in order to compile for 64bit it is necessary to set the ##TARGET_ARCH## variable manually, because MSYS' ##uname -m## command does not support 64bit and thus the FB makefile would mis-detect the system as 32bit. Assuming the FB sources are located at ##""C:\fbc""##, create a ##""C:\fbc\config.mk""## file containing the following:
We will need a working fbc installation to bootstrap the new FB compiler. If you do not have fbc installed yet, download the latest ""fbc-X.XX.X-mingw-w64-i686"" (32bit) or ""fbc-X.XX.X-mingw-w64-x86_64"" (64bit) package from [[http://sourceforge.net/projects/fbc/files/Binaries%20-%20Windows/|FB's download site]], and extract it into the ""MinGW-w64"" directory (##""C:\MinGW-w64""##) like a ""MinGW"" package. This will add a working fbc to your ""MinGW-w64"" installation.
Deletions:
To compile a new version of FB, you first need to [[DevGettingTheSourceCode get the FB source code]]. The following assumes that you have a directory called ##fbc##, containing the latest FB source code.
In this guide we will use a 32bit or 64bit [[mingw-w64.sourceforge.net MinGW-w64]] toolchain to build the 32bit or 64bit version of FB, respectively. Visit [[http://sourceforge.net/projects/mingw-w64/files/]] and enter the [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/ Toolchains targetting Win64]] or [[http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/ Toolchains targetting Win32]] directory, depending on whether you want to compile a 32bit or 64bit version of FB. Enter the ##Personal Builds/mingw-builds/## subdirectory, choose the latest gcc version, then enter the ##threads-win32/sjlj/## subdirectory and download the toolchain package from there.
The needed MSYS packages can be downloaded and extracted by using the latest version of the [[http://sourceforge.net/projects/mingw/files/Installer/ mingw-get setup from the MinGW.org project]].
This should install the commonly needed MSYS components. We do not want to install the ##mingw32-base## or ##mingw32-gcc-*## packages here, because we are using an external ""MinGW-w64"" toolchain instead of the ""MinGW.org"" one. If you do not wish to use the ""MinGW.org"" installer, you can also download the ""MinGW""/MSYS packages manually from the [[http://sourceforge.net/projects/mingw/files/ MinGW project's download site]].
The FB rtlib source code depends on [[http://sourceware.org/libffi/ libffi]] headers (##ffi.h## and ##ffitarget.h##) to be available in the gcc toolchains include directory (##""C:\MinGW-w64\i686-w64-mingw32\include""## for 32bit ""MinGW-w64"" and ##""C:\MinGW-w64\x86_64-w64-mingw32\include""## for 64bit ""MinGW-w64""). Furthermore, the ##libffi.a## library will be needed later when compiling FB programs that use [[KeyPgThreadCall ThreadCall]].
Prebuilt versions of libffi are available from the [[http://sourceforge.net/projects/fbc/files/Binaries%20-%20Windows/Libraries/ fbc downloads area]].
We will need a working FB-win32 installation to bootstrap the new FB compiler. If you do not have FB-win32 installed yet, download the latest ##""FreeBASIC-X.XX.X-win32""## release from the [[http://sourceforge.net/projects/fbc/files/Binaries%20-%20Windows/ FB's download site]]. It should be extracted somewhere like ##""C:\FreeBASIC-X.XX.X-win32""##.
If you want to create a [[DevNormalVsStandalone traditional standalone]] FB-win32 setup like the one from the ##""FreeBASIC-X.XX.X-win32""## release package, you need to tell FB's makefile by setting the ENABLE_STANDALONE variable. Furthermore, in order to compile for 64bit it is necessary to set the ##TARGET_ARCH## variable manually, because MSYS' ##uname -m## command does not support 64bit and thus the FB makefile would mis-detect the system as 32bit. Assuming the FB sources are located at ##""C:\fbc""##, create a ##""C:\fbc\config.mk""## file containing the following:
We will need a working fbc installation to bootstrap the new FB compiler. If you do not have fbc installed yet, download the latest ""fbc-X.XX.X-mingw-w64-i686"" (32bit) or ""fbc-X.XX.X-mingw-w64-x86_64"" (64bit) package from [[http://sourceforge.net/projects/fbc/files/Binaries%20-%20Windows/ FB's download site]], and extract it into the ""MinGW-w64"" directory (##""C:\MinGW-w64""##) like a ""MinGW"" package. This will add a working fbc to your ""MinGW-w64"" installation.


Revision [17749]

Edited on 2015-09-08 08:34:00 by DkLwikki [Mention gcc.exe/cc1.exe]
Additions:
1) For 64bit, or for using -gen gcc on 32bit, gcc.exe and cc1.exe are needed too.
- Copy ##""C:\MinGW-w64\bin\gcc.exe""## to ##""C:\fbc\bin\win{32|64}""##
- Copy ##""C:\MinGW-w64\libexec\gcc\[target]\[version]\cc1.exe""## to ##""C:\fbc\bin\libexec\gcc\[target]\[version]\cc1.exe""##


Revision [17243]

Edited on 2014-09-06 11:41:18 by DkLwikki [Fix make install example]
Additions:
%%$ make install prefix=C:/MinGW-w64
Deletions:
%%> make install prefix=C:/MinGW-w64


Revision [17242]

Edited on 2014-09-06 11:39:18 by DkLwikki [Link to DevGccToolchainChoice]
Additions:
If you know what you are doing, you can also use a different ""MinGW-w64"" toolchain, or even one from different projects such as ""MinGW.org"" or ""TDM-GCC"". We have some more information on the ""MinGW"" toolchain choices on the [[DevGccToolchainChoice]] page.
Deletions:
If you know what you are doing, you can also use a different ""MinGW-w64"" toolchain, or even one from different projects such as ""MinGW.org"" or ""TDM-GCC"". We have some more information on the ""MinGW"" toolchain choices on the [[DevMakingReleases]] page.


Revision [17198]

Edited on 2014-08-28 14:25:46 by DkLwikki [Fix 64bit build]
Additions:
If you want to create a [[DevNormalVsStandalone traditional standalone]] FB-win32 setup like the one from the ##""FreeBASIC-X.XX.X-win32""## release package, you need to tell FB's makefile by setting the ENABLE_STANDALONE variable. Furthermore, in order to compile for 64bit it is necessary to set the ##TARGET_ARCH## variable manually, because MSYS' ##uname -m## command does not support 64bit and thus the FB makefile would mis-detect the system as 32bit. Assuming the FB sources are located at ##""C:\fbc""##, create a ##""C:\fbc\config.mk""## file containing the following:
- 64bit:
# Manually set TARGET_ARCH to override uname check for 64bit
TARGET_ARCH = x86_64
In order to create a normal (non-standalone) build, just compile FB without specifying ##ENABLE_STANDALONE##. However, in order to compile for 64bit it is necessary to set the ##TARGET_ARCH## variable manually, because MSYS' ##uname -m## command does not support 64bit and thus the FB makefile would mis-detect the system as 32bit.
- 32bit: no ##config.mk## needed.
- 64bit: Create a ##config.mk## containing the following:
%%# Manually set TARGET_ARCH to override uname check for 64bit
TARGET_ARCH = x86_64
Then, open the MSYS bash using the .bat script mentioned above (with the proper PATH settings), go to the directory with the FB source code, run "make" and let it compile:
Deletions:
If you want to create a [[DevNormalVsStandalone traditional standalone]] FB-win32 setup like the one from the ##""FreeBASIC-X.XX.X-win32""## release package, you need to tell FB's makefile by setting the ENABLE_STANDALONE variable. Assuming the FB sources are located at ##""C:\fbc""##, create a ##""C:\fbc\config.mk""## file containing the following:
In order to create a normal (non-standalone) build, just compile FB without specifying ##ENABLE_STANDALONE##. Open the MSYS bash using the .bat script mentioned above (with the proper PATH settings), go to the directory with the FB source code, run "make" and let it compile:


Revision [17191]

The oldest known version of this page was created on 2014-08-28 14:14:20 by DkLwikki [Fix 64bit build]
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki



sf.net phatcode