2019-03-19 09:14:19 +00:00
[[http://spacemacs.org ][file:https://cdn.rawgit.com/syl20bnr/spacemacs/442d025779da2f62fc86c2082703697714db6514/assets/spacemacs-badge.svg ]]
* Genetic image generation
This project is a university assignment that aims at regenerating a reference
image from random shapes of random color applied. There will be lots of
different tests on what method is the best and/or the fastest to get a new
image as close as possible to the reference image.
* Technical information
2019-03-19 10:01:39 +00:00
To build the project, you will also be required to install the development
libraries your distro offers for GTK+3. For Ubuntu, it is ~libgtk3-devel~ , for Void Linux it is ~gtk3-devel~ and for Arch Linux it is already bundled with the ~gtk3~ package.
You will also ned to have Ninja and Conan installed. To install Ninja, install
the appropriate package offered by your package manager (~ninja-build~ on
Debian, ~ninja~ on Arch Linux and Void Linux), and to install conan, use ~pip~ .
#+begin_src shell
pip install --user conan
#+end_src
2019-03-19 09:14:19 +00:00
This project is built with conan, ninja and cmake using clang-7 for C++17. To
use it, first install clang-7 and lldb 7, then run this:
#+begin_src shell
conan profile new default --detect
conan profile update settings.compiler=clang default
conan profile update settings.compiler.version=7.0 default
conan profile update settings.compiler.libcxx=libstdc++11 default
conan profile update env.CC=/bin/clang default
conan profile update env.CXX=/bin/clang++ default
#+end_src
If you do not wish to overwrite your ~default~ profile, you can instead create a
new one, for instance ~clang~ . To do so, write the name of your new profile (in
this example ~clang~ ) instead of ~default~ in the commands shown above.
Then, To build and run the program, go to the root of the project and run this:
#+begin_src shell
mkdir build && cd build
conan install .. --build missing
2019-03-19 10:01:39 +00:00
cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ .. -G Ninja
2019-03-19 09:14:19 +00:00
cmake --build .
#+end_src
If you want to use another profile than your default one, you should run the
following line instead of the second line:
#+begin_src shell
conan install .. --build missing --profile <your_profile >
#+end_src
This project was built and tested using clang-7, lldb and gdb on Void Linux
(kernel 4.19) and Arch Linux (kernel 5.0).
* Credits
Awesome C++ project template by [[https://github.com/devkoriel/AwesomeCppTemplate ][devkoriel ]].