Toggle menu
71
399
28
3.6K
Medusa: Coordinate Free Meshless Method implementation
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Including this library in your project: Difference between revisions

From Medusa: Coordinate Free Meshless Method implementation
No edit summary
No edit summary
Line 1: Line 1:
=== Using in a cmake project ===
Integration with our library is very simple if you are using <code>cmake</code>.
Integration with our library is very simple if you are using <code>cmake</code>.
Your basic <code>CMakeLists.txt</code> file should look something like this:
Your basic <code>CMakeLists.txt</code> file should look something like this:
Line 35: Line 37:
The code is then compiled by going to your build directory and writing <code>make my_name</code>.
The code is then compiled by going to your build directory and writing <code>make my_name</code>.


## Standalone usage
=== Standalone usage ===
 
By running <code>make medusa_standalone</code> in the <code>medusa/build</code> directory, the static archive
<code>medusa/bin/libmedusa_standalone.a</code> is created. In you project, you have to include the medusa headers
<code>medusa/include</code> and link the <code>medusa_standalone</code> library.
 
<sytnaxhighlight lang="bash">
g++ -o my_program my_program.cpp -I /.../medusa/include -L /.../medusa/bin/ -lmedusa_standalone
</syntaxhighlight>

Revision as of 13:53, 17 January 2019

Using in a cmake project

Integration with our library is very simple if you are using cmake. Your basic CMakeLists.txt file should look something like this:

project(your_project_name)
cmake_minimum_required(VERSION 2.8.12)

set(CMAKE_CXX_FLAGS "-O3 -Wall -fopenmp -DNDEBUG") # modify flags appropriately for your project

add_subdirectory(${CMAKE_SOURCE_DIR}/path/to/medusa/ medusa) # add our library's CMakeLists.txt as a subfolder
include_directories(${CMAKE_SOURCE_DIR}/path/to/medusa/include/)  # include medusa headers directory

# define your own executables below
add_executable(my_name my_name.cpp)
target_link_libraries(my_name medusa)  # link to our library


Next to the CMakeLists.txt file, you should put your source file my_name.cpp, which can now use the Medusa library. Sample contents of the file are shown below:

#include <medusa/Medusa.hpp>
#include <iostream>

using namespace mm;

int main() {
    BoxShape<Vec2d> box(0, 1);
    std::cout << box << std::endl;
    return 0;
}

The code is then compiled by going to your build directory and writing make my_name.

Standalone usage

By running make medusa_standalone in the medusa/build directory, the static archive medusa/bin/libmedusa_standalone.a is created. In you project, you have to include the medusa headers medusa/include and link the medusa_standalone library.

<sytnaxhighlight lang="bash"> g++ -o my_program my_program.cpp -I /.../medusa/include -L /.../medusa/bin/ -lmedusa_standalone </syntaxhighlight>