Add INSTALL
This commit is contained in:
parent
cadb64e4c6
commit
8f09237773
|
@ -0,0 +1,84 @@
|
|||
# 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
|
Loading…
Reference in New Issue