mirror of
https://github.com/reactos/RosBE.git
synced 2024-11-23 19:39:51 +00:00
2329bff21f
- Complete README - Add a 'bugfix' for newer Linux distributions to allow building binutils & gcc. We disable doc generation for these two. - Backport a GCC fix to prevent crash during CRT build - Finally upgrade Unix to 2.1.1 - Add possibility to upgrade from 2.1 to 2.1.1 (without reinstalling everything) svn path=/trunk/RosBE/; revision=2099
200 lines
6.7 KiB
Plaintext
200 lines
6.7 KiB
Plaintext
ReactOS Build Environment
|
|
Version 2.1.1 for Unix-based operating systems
|
|
Base package and i386 build tools
|
|
by Pierre Schweitzer (pierre@reactos.org)
|
|
|
|
Introduction
|
|
-------------
|
|
The ReactOS Build Environment ("RosBE") is a Build Environment for building
|
|
ReactOS. This version is targeted at Unix-based operating systems such as
|
|
Linux or FreeBSD.
|
|
The Installation process of the Build Environment is divided into two parts.
|
|
First a script builds the needed compiler tools for your operating system
|
|
and installs them. Therefore the "gcc" compiler for your system and some
|
|
other build tools have to be installed.
|
|
Then another script creates a shortcut for you. This shortcut opens a
|
|
Terminal window and prepares all environment settings for building ReactOS.
|
|
|
|
|
|
Needed Applications
|
|
--------------------
|
|
Make sure that the following applications are installed on your system.
|
|
They are needed to build the compiler tools. The "RosBE-Builder.sh" script
|
|
automatically checks for them:
|
|
|
|
* GNU Bash
|
|
The executable file and the package name are often called "bash".
|
|
All scripts are designed to work only under the Bash shell. Please also
|
|
make sure that the file "/bin/bash" exists. For example FreeBSD usually
|
|
installs Bash into another directory, so you have to create a symbolic
|
|
link "/bin/bash" to the executable file.
|
|
|
|
* GNU Bison
|
|
The executable file and the package name are often called "bison".
|
|
|
|
* Flex
|
|
The executable file and the package name are often called "flex".
|
|
|
|
* GNU GCC
|
|
You need a GCC compiler, which is suitable for your system. The
|
|
executable file and the package name are often called "gcc".
|
|
Your GCC compiler needs to be able to compile both C and C++ sources.
|
|
Therefore the "g++" module also has to be installed.
|
|
The compiler needs to be in version 3.4 or later.
|
|
|
|
* Grep
|
|
The executable file and the package name are often called "grep".
|
|
|
|
* GNU Make
|
|
Make sure that you have the GNU version of "make" installed. For example
|
|
FreeBSD uses another version. The executable file and the package name
|
|
are often called "make" or "gmake".
|
|
|
|
* GNU Makeinfo
|
|
The executable file is often called "makeinfo". Usually this file is in a
|
|
package called "texinfo".
|
|
|
|
|
|
Needed Libraries
|
|
--------------------
|
|
Make sure that the following libraries are installed on your system.
|
|
They are needed to extract the compiler tools. The "RosBE-Builder.sh" script
|
|
automatically checks for them:
|
|
|
|
* zlib
|
|
The library file is generally called "libz.so".
|
|
|
|
|
|
Preparing the installation
|
|
---------------------------
|
|
Under some operating systems, you need to perform additional steps before
|
|
you can install the Build Environment. This section lists them.
|
|
|
|
* FreeBSD
|
|
- You have to create a symbolic link "/bin/bash", because FreeBSD
|
|
installs Bash to "/usr/local/bin/bash". Simply execute the following
|
|
command for doing this:
|
|
|
|
ln -s /usr/local/bin/bash /bin/bash
|
|
|
|
|
|
Installation
|
|
-------------
|
|
The Installation of RosBE is very simple, since there are scripts, which do
|
|
most of the work for you. Follow these steps to compile and install RosBE for
|
|
your used operating system:
|
|
|
|
1. Open a Terminal window and type "su" to become "root" user.
|
|
NOTE: Becoming a root user is only required for installing RosBE into the
|
|
default directory ("/usr/local/RosBE"). If you want to install it into a
|
|
personal directory, you don't need superuser privileges.
|
|
2. Call the "RosBE-Builder.sh" script in the directory of the unpacked
|
|
RosBE files.
|
|
NOTE: Advanced users can make use of CFLAGS, CC, CXX variables to modulate
|
|
the way tools will be built.
|
|
3. Follow the directions on the screen until the script ends with "Finished
|
|
successfully!"
|
|
4. Type "exit" to switch back to your normal user account. Then call the
|
|
"createshortcut.sh" script in the installation directory (usually this
|
|
is "/usr/local/RosBE").
|
|
5. Follow the directions on the screen to create a shortcut for the Build
|
|
Environment.
|
|
|
|
After that you can easily open a Build Environment for ReactOS by opening
|
|
the shortcut.
|
|
|
|
|
|
Uninstallation
|
|
---------------
|
|
If you want to uninstall RosBE, just delete the entire installation directory
|
|
and any shortcuts you have created.
|
|
|
|
|
|
Version Information
|
|
--------------------
|
|
This version of RosBE for Unix-based operating systems uses the following
|
|
components:
|
|
|
|
* GNU Binutils v2.23
|
|
compiled for mingw32
|
|
patched with:
|
|
- http://svn.reactos.org/project-tools/trunk/RosBE/Patches/binutils-changes-against-2.22.patch?p=1352
|
|
- http://sourceware.org/ml/binutils/2012-10/msg00061.html
|
|
- http://sourceware.org/ml/binutils/2012-10/msg00062.html
|
|
|
|
* GCC, The GNU Compiler Collection v4.7.1
|
|
compiled for mingw32
|
|
patched with:
|
|
- http://gcc.gnu.org/viewcvs/gcc/branches/gcc-4_7-branch/gcc/ira-int.h?view=patch&r1=191605&r2=191604&pathrev=191605
|
|
|
|
NOTE: This GCC version only supports C and C++
|
|
|
|
* Make 3.82
|
|
patched with:
|
|
- http://svn.reactos.org/project-tools/trunk/RosBE/Patches/Make-Windows-jobserver-against-3.8.2.patch?p=1321
|
|
|
|
* CMake 2.8.12.1-ReactOS
|
|
* GMP 5.0.5
|
|
* Ninja 1.4.0
|
|
* MinGW-Runtime 3.17
|
|
* MPFR 3.1.1
|
|
* W32api 3.14
|
|
* MPC 1.0.1
|
|
|
|
|
|
Tested Operating Systems
|
|
-------------------------
|
|
The Build Environment was designed to work on all Unix-based operating
|
|
systems. Nevertheless, it is impossible to test it on all possible systems out
|
|
there.
|
|
The current primary development and test system is Ubuntu 12.04. But users
|
|
also reported that it works well under other Linux systems such as Fedora or
|
|
openSUSE and Unix derivates like FreeBSD or Mac OS X.
|
|
You should be able to compile the build tools on both i386 (32-bit) and
|
|
x86_64 (64-bit) systems.
|
|
|
|
|
|
Websites
|
|
---------
|
|
MinGW - Minimalist GNU for Windows
|
|
http://www.mingw.org
|
|
|
|
Binutils, the Binary Tools Collection
|
|
http://www.gnu.org/software/binutils
|
|
|
|
CMake, Cross Platform Make
|
|
http://www.cmake.org
|
|
|
|
GCC, the GNU Compiler Collection
|
|
http://www.gcc.org
|
|
|
|
GMP, the GNU MP Bignum library
|
|
http://www.gmplib.org
|
|
|
|
Make, the Makefile processor
|
|
http://www.gnu.org/software/make
|
|
|
|
The GNU MPFR library
|
|
http://www.mpfr.org
|
|
|
|
|
|
Credits
|
|
--------
|
|
Colin Finck (colin@reactos.org)
|
|
Pierre Schweitzer (pierre@reactos.org)
|
|
|
|
Thanks go also to the members of the RosBE-Windows team, namely:
|
|
Daniel Reimer (daniel.reimer@reactos.org)
|
|
Peter Ward (dralnix@gmail.com)
|
|
|
|
Special thanks to ROSFan, who created the nice ReactOS Build Environment
|
|
Logo.
|
|
Special thanks also goes out to all those who provide so much help by
|
|
testing out new versions, you know who you are. Without them the RosBE
|
|
would not be what it is.
|
|
Credits go to Gregor Anich who created the original ReactOS Build
|
|
Environment v0.2-3.4.4.
|
|
|
|
Inspired by Dazzle from TinyKRNL (http://tinykrnl.org/).
|
|
|