Changes between Version 6 and Version 7 of HowToCompile
- Timestamp:
- 01/11/14 21:40:01 (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
HowToCompile
v6 v7 3 3 LEMON is basically a large collection of C++ header files plus a small static library. If you want to use LEMON from your own code, you must somehow let the compiler know where to find them. There are three ways for doing it. 4 4 - Firstly, you can install LEMON to your system. You can either install some prebuilt binary version or [InstallGuide install it from source] (don't worry, it's easy). 5 - If you install it system-wide on Unices (Linux, OSX, AIX etc.), then the compiler will automatically find LEMON, thus you can simply compile your code like this :5 - If you install it system-wide on Unices (Linux, OSX, AIX etc.), then the compiler will automatically find LEMON, thus you can simply compile your code like this (assuming [http://gcc.gnu.org/ GCC] compiler): 6 6 {{{ 7 7 g++ -O2 mycode.cc -lemon 8 8 }}} 9 9 - If you want to use an installed LEMON on Windows or a user-local installed version on Unices, you must explicitly tell the location of the header files and the lib to the compiler. Please consult the documentation of your compiler on how to do it. 10 For further instructions, see the corresponding sections of the [http://lemon.cs.elte.hu/pub/tutorial/ LEMON tutorial]. 10 11 - Secondly, if you want to compile a single `.cc` file very fast (or with the prospect that your algorithm eventually will be migrated into the core LEMON itself), you can download LEMON and add your code to it. For this, put the `.cc` file into the [source:contrib contrib/] subdirectory, adjust [source:contrib/CMakeLists.txt contrib/CMakeLists.txt] and compile it according to [InstallCmake Build with CMake] guide. Of course you can omit the final installation step. 11 12 - Thirdly, you can use the [ProjectTemplate LEMON project template] either with an installed or a project local version of LEMON. This template is a preconfigured CMake build environment for LEMON based C++ projects. It is especially recommended for larger project with several source codes (and even multiple executables), but it pretty easy to set up for small applications, too.