xStl is a cross-compile, cross-platform C++ library that implements a set of generic templates for easy development. The library includes an easy abstraction layer for OS-dependent code.
Need Visual Studio Express 2010 or higher, or Visual Studio 2010 or higher.
sudo apt-get install automake autoconf libtool build-essential git-core
- Building tools
sudo yum install autoconf automake gcc-c++
sudo dnf install autoconf automake gcc-c++
Some distributions of CentOS have a problem with libstd++ (need to check). For some reason the symbol __cxa_get_exception_ptr is not defined.
- Building tools
sudo pacman -S base-devel automake autoconf git
sudo pacman -S gcc-multilib libtool-multilib binutils-multilib
Install cygwin with the following packages:
- gcc
- g++
- automake
- autoconf
- libtool
git clone https://github.com/eladraz/xStl
CMake is cross-compile system for many platform and many system. You can read about it more here
Here is a quick example on how to run xStl with ninja build:
mkdir build
cd build
cmake -G Ninja ..
ninja -j
In order to pass variable arguments to Visual Studio, you need to declare the following system argument:
- XSTL_PATH (for example:
C:\WORK\github\xStl
)
To add system variables you should:
- Right-click My Computer, and then click Properties.
- Click the Advanced tab.
- Click Environment variables.
- Click one the following options, for either a user or a system variable:
- Click New to add a new variable name (e.g.
XSTL_PATH
) and value (e.g.C:\WORK\github\xStl
).- Click an existing variable, and then click Edit to change its name or value.
- Click an existing variable, and then click Delete to remove it.
In order to build the xStl library, open xStl.sln
solution project with Visual Studio.
In Visual Studio's configuration manager, choose the desired build configuration (Win32/x64/Debug/Release) and build xStl
or xStl_test
.
In order to compile xStl you can simply run build.sh
:
#/bin/sh
PWD=`pwd`
./autogen.sh && ./configure [--prefix=${PWD}/out] [--enable-debug] [--enable-unicode] [--enable-tests] && make -j4 && make install
- Run
./autogen.sh
in order to generateMakefile
configure script. - Run
./configure
to generateMakefile
(see Configure Argument section, below). - Run
make
andmake install
.
- --enable-debug Compile with debugging flags
- --enable-unicode Compile with UNICODE support
- --enable-tests Compile xStl_tests
In order to cross-compile (ARM, for example):
./autogen.sh
./configure --build= --host=arm-none-linux-gnueabi
Please note that it is important to have a PATH to the cross-compiler bin folder (e.g. arm-none-linux-gnueabi-g++
).
Please see LICENSE file