NOTE Maintainers from AltLinux please read this: MAINTAINERS_ru.md (in Russian).
Branch master
contains Russian Algorithmic language implementation and all
system modules, even not included in release.
Branch python
contains Python-3 language implementation.
Releases are maked by tags and lists of excluded modules.
Run remove-unstable-modules-v.X.X.X.sh
before bundling source package.
- CMake version at least 2.8.11
- Python interpreter version at least 2.7.0
- Qt4 SDK version at least 4.7.0. It is possible to build using Qt5 (>= 5.3.0)
- ZLib development files
- Boost 1.54.0 development files. Required Boost files are bundled into
this repository, but you can use your distribution provided package by
deleting
src/3rdparty/boost-1.54.0
- LLVM development files version at least 3.4 are optional to build native code generation feauture
- Python development files at least 3.2 in case of building branch
python
- CMake version 2.8.11. There is known regression in version 2.8.12, so do not use it
- Python interpreter version at least 2.7.0
- Microsoft Visual Studio Express 2010 or 2012
- Qt4 SDK version at least 4.8.0. Qt5 not well-tested on this platform
- Boost and ZLib development files which bundled in this repository
- Python development files at least 3.2 in case of building branch
python
In order to build native code generation feature on Windows you must use MSVC2012 and provide several requirements:
- Boost version at least 1.57.0 due to incompatibility of version 1.54 with MSVC2012
- LLVM development files version exact 3.4.0 prebuilt using MSVC2012 toolchain
- CLang compiler version exact 3.4.0 prebuilt using MinGW 4.8 toolchain
- MinGW version exact 4.6.1 files
Meet all requirements (see above)
Run cmake in separate directory:
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
If you want to use Qt5 instead of Qt4, pass -DUSE_QT=5
option to cmake.
Run make:
make
This will build entire project into build/Release
directory.
To install in /usr/local/
prefix run make install
.
In order to provide custom prefix, you can pass option
-DCMAKE_INSTALL_PREFIX=
to cmake.
Meet all requirements and ensure that qmake.exe
, cmake.exe
and python.exe
are present in system PATH
environment variable. Also ensure QTDIR
and
QMAKESPEC
environment variables are set to match your Qt and compiler
toolchain installation.
Start Microsoft Visual Stido Tools console.
Within the console create subdirectory build
of project root, walk there and
run:
cmake -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles" ..
nmake
This will build entire project into build/Release
directory.
To build native code generation feature there are additional options required to be passed to cmake:
-DCLANG_EXECUTABLE=
- path toclang.exe
, which built using MinGW toolchain. This CLang compiler is used to generate LLVM bytecode for standard and runtime libraries-DLLVM_ROOT=
,-DLlvm_INCLUDE_DIR=
and-DLlvm_CONFIG_EXECUTABLE=
- paths to prebuild LLVM root directory,include
subdirectory andllvm-config.exe
executable-DBOOST_ROOT=
- path to Boost root version at least 1.57.0. Remove bundled boost first
The following files must be copied into bin
build subdirectory:
phonon4.dll
QtCore4.dll
QtSql4.dll
QtDeclarative4.dll
QtGui4.dll
QtNetwork4.dll
QtOpenGL4.dll
QtScript4.dll
QtSvg4.dll
QtWebKit4.dll
QtXml4.dll
QtXmlPatterns4.dll
In order to use native code generation feature the following files from MinGW
version 4.6.1 must be copied into llvm-mingw
build subdirectory:
as.exe
crt2.o
crtbegin.o
crtend.o
ld.exe
libadvapi32.a
libgcc.a
libgcc_s_dw2-1.dll
libkernel32.a
libmingw32.a
libmingwex.a
libmoldname.a
libmsvcrt.a
libpthread.a
libshell32.a
libstdc++-6.dll
libstdc++.a
libuser32.a
llc.exe