owlps/INSTALL

85 lines
2.4 KiB
Plaintext

# Basics
It is planned to use the `autotools` in a near future, but for now,
OwlPS uses a simple set of GNU makefiles to compile and install the
various modules. The top-level makefile will call `make` into the
subdirectories for all the modules.
At any level, you can type:
make help
to see the usable targets and requirements to compile.
Once you have all the requirements, the easy way is to just call `make`
from the top-level directory, to build all the modules.
# Compiling
You can choose the compiler to use by setting the CC variable when
calling `make`, for example:
make CC=tcc
By default, `clang` will be used for C modules, or `colorgcc` if `clang`
is not installed. If neither `clang` or `colorgcc` is installed, CC is
left to the `make` default.
For OwlPS Positioner (C++), `colorgcc` is used, or the default CC if it
is not installed. Please keep in mind that this module requires GCC 4.4
or later.
# Compiling on BSD systems
Remember to use `gmake` instead of `make`. From the top-level, you will
need to set the MAKE variable, for example:
gmake MAKE=gmake
OwlPS Listener will not compile since it still contains some
Linux-specific code. You may want to comment-out the related lines of
the top-level makefile.
You might also need to set some variables, for example CC to force a
specific GCC version to be used.
# Compiling for OpenWrt
To compile for OpenWrt, you need to set the OPENWRT_VERSION when calling
make, for example:
make OPENWRT_VERSION=10.03
It is assumed than the OpenWrt SDK is installed in
`$HOME/openwrt/buildroot` and that the target architecture is `atheros`.
For a different set up, you will need to edit the `common.mk` file.
For now, only OpenWrt 10.03 and trunk are supported. If you set
OPENWRT_VERSION to something different than "10.03", it is replaced by
"trunk".
For this to work we advise that you do something like that:
mkdir -p ~/openwrt/atheros/trunk
cd ~/openwrt/atheros/trunk
ln -s ../../buildroot/staging_dir
ln -s \
../../buildroot/staging_dir/target-mips_uClibc-0.9.33 \
target-mips_uClibc
ln -s \
../../buildroot/staging_dir/toolchain-mips_gcc-4.6-linaro_uClibc-0.9.33/ \
toolchain-mips_gcc_uClibc
Of course, you will have to update the symlinks when you compile a new
version of the SDK.
# Installing
At any level, you can install what is installable by typing, as `root`:
make install