This repository catalogues miscellaneous C++ tools that I have authored to ASSIST my research (well if you can Boost your C++ code, why not assist it too?!).
I'm very open to suggestions and improvements, so feel free to teach me a thing or two.
Assist
requires the following libraries/tools. The listed versions are not necessarily essential, however Assist
is known to build succesfully when these are used.
Name | Version |
---|---|
GCC | 4.8 |
CMake | 2.8.12 |
Eigen | 3.2.1 |
Boost | 1.55.0 |
Tudat & Tudat Core | 2a2720 & bec885 |
Alternative C++ compilers may be used, however they haven't been tested to date.
The easiest way to install the Assist library is to simply clone the repository and run CMake
. This assumes that Eigen, Boost, Tudat & Tudat Core have been installed and can either be found through the system path or through relative paths (see CMakeModules
directory included in the Assist project).
In addition, you must have a C++ compiler and the CMake tool needs to be installed on the system path.
To clone the Assist
library, simply execute the following from your terminal:
> git clone https://github.com/kartikkumar/assist.git
Move into the assist
directory and create a build
directory:
> mkdir build
> cd build
From within the build
directory, run the following command:
build> cmake ../Assist
Once CMake
has been run succesfully, run make
from within the build
directory to build the library.
build> make
You can optionally also run the test suite at this stage to make sure that everything has been built correctly.
build> make test
This should not result in any failures.
The static libraries reside in lib
directory in the project root.
You can pass the -DBUILD_DOCUMENTATION=on
option to CMake
to build the Doxygen documentation locally.
Once you've made your great commits:
- Fork Assist
- Create a topic branch -
git checkout -b my_branch
- Push to your branch -
git push origin my_branch
- Create a Pull Request from your branch
- That's it!
See COPYING.
These tools are work-in-progress, and as such, I provide no assurances that they achieve the intended results in the manner conceived (in other words, don't blame me if you use any of these tools and they don't turn out to work as you expected).
You can reach me at [email protected].