@@ -25,21 +25,21 @@ All CMakeLists in flair use custom modules located in [flair-src](https://gitlab
...
@@ -25,21 +25,21 @@ All CMakeLists in flair use custom modules located in [flair-src](https://gitlab
A better explanation on how to use these modules can be found [here](cmake_modules).
A better explanation on how to use these modules can be found [here](cmake_modules).
Each installed toolchain have a *toolchain.cmake* file (for example */opt/robomap3/2.1.3/armv5te/toolchain.cmake*) which defines everything needed by CMake to compile for a specific architecture.
Each installed toolchain have a _toolchain.cmake_ file (for example _/opt/robomap3/2.1.3/armv5te/toolchain.cmake_) which defines everything needed by CMake to compile for a specific architecture.
# Out of source build
# Out of source build
The recommended usage is to build everything out of source, in order to keep your git repositories clean. Helper script (*flair_compile_all.sh*) will build everything in *$FLAIR_ROOT/flair-build* directory.
The recommended usage is to build everything out of source, in order to keep your git repositories clean. Helper script (_flair_compile_all.sh_) will build everything in _$FLAIR_ROOT/flair-build_ directory.
# One directory by architecture
# One directory by architecture
*cmake_codelite_outofsource.sh* creates a folder for each supported architecture (ie by installed toolchain) in *flair-build* directory. For example:
*cmake_codelite_outofsource.sh* creates a folder for each supported architecture (ie by installed toolchain) in _flair-build_ directory. For example:
***build_armv7a_neon** for armv7a-neon architecture (ardrone2, bebop, hds x8)
***build_armv7a_neon** for armv7a-neon architecture (ardrone2, bebop, hds x8)
***build_armv5e for armv5e** architecture (mambo)
***build_armv5e for armv5e** architecture (mambo)
***build_cortexa7thf_neon_vfpv4** for cortexa7thf-neon-vfpv4 architecture (raspberry pi)
***build_cortexa7thf_neon_vfpv4** for cortexa7thf-neon-vfpv4 architecture (raspberry pi)
***build_core2_64** for core2_64 architecture (PC)
***build_core2_64** for core2_64 architecture (PC)
Note that there is also a symlink from *build* to *build_core2_64*.
Note that there is also a symlink from _build_ to _build_core2_64_.
# Compile flair libraries, tools and demos all together
# Compile flair libraries, tools and demos all together
...
@@ -52,19 +52,19 @@ If it is the first time you execute this script, you must answer yes to the ques
...
@@ -52,19 +52,19 @@ If it is the first time you execute this script, you must answer yes to the ques
The script detects installed toolchains and compile everything for each supported architecture. It will create a directory *flair-install* in *$FLAIR_ROOT*.
The script detects installed toolchains and compile everything for each supported architecture. It will create a directory *flair-install* in *$FLAIR_ROOT*.
Results are the following:
Results are the following:
* flair libs headers installed in *$FLAIR_ROOT/flair-install/include*
* flair libs headers installed in _$FLAIR_ROOT/flair-install/include_
* flair libs binaries installed in *$FLAIR_ROOT/flair-install/lib*
* flair libs binaries installed in _$FLAIR_ROOT/flair-install/lib_
* flair tools binaries installed in *$FLAIR_ROOT/flair-install/bin/tools/core2-64* (but launching scripts are in *$FLAIR_ROOT/flair-bin/tools/scripts*)
* flair tools binaries installed in _$FLAIR_ROOT/flair-install/bin/tools/core2-64_ (but launching scripts are in $FLAIR_ROOT/flair-bin/tools/scripts)
* flair demos binaries installed in *$FLAIR_ROOT/flair-install/bin/demos*
* flair demos binaries installed in _$FLAIR_ROOT/flair-install/bin/demos_
For Heudiasyc users, additional stuffs are also installed:
For Heudiasyc users, additional stuffs are also installed:
* flair hds libs headers installed in *$FLAIR_ROOT/flair-install/include*
* flair hds libs headers installed in _$FLAIR_ROOT/flair-install/include_
* flair hds libs binaries installed in *$FLAIR_ROOT/flair-install/lib*
* flair hds libs binaries installed in _$FLAIR_ROOT/flair-install/lib_
* flair hds demos binaries installed in *$FLAIR_ROOT/flair-install/bin/demos*
* flair hds demos binaries installed in _$FLAIR_ROOT/flair-install/bin/demos_
# Recompile a particular project
# Recompile a particular project
**NOTE**: this is only for projects provided in *flair-src* and *flair-hds* repositories. For your own project go to next section.
**NOTE**: this is only for projects provided in _flair-src_ and _flair-hds_ repositories. For your own project go to next section.
If you have already done the previous step (compile everything) and you want to just recompile and install a particular project (lib, demo or tool), do the following:
If you have already done the previous step (compile everything) and you want to just recompile and install a particular project (lib, demo or tool), do the following:
...
@@ -101,7 +101,7 @@ For Heudiasyc users *project_path* can also be the following:
...
@@ -101,7 +101,7 @@ For Heudiasyc users *project_path* can also be the following:
You can generate your own project where you want, and compile it. Yet, you need to have compiled and installed Flair libs before, to have all needed development files. But it is not necessary to recompile libs each time you want to compile your project!
You can generate your own project where you want, and compile it. Yet, you need to have compiled and installed Flair libs before, to have all needed development files. But it is not necessary to recompile libs each time you want to compile your project!
The following assumes that your project is in *$FLAIR_ROOT/<path_to_my_project>* and you want to built it in *$FLAIR_ROOT/flair-build/<mywork>/<myproject>*
The following assumes that your project is in `$FLAIR_ROOT/<path_to_my_project>` and you want to built it in `$FLAIR_ROOT/flair-build/<mywork>/<myproject>`