User Tools

Site Tools


en:devel

Differences

This shows you the differences between two versions of the page.


Previous revision
en:devel [2021/02/13 11:23] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +
 +====== Howto Contribute and Code ======
 +
 +If you wish to contribute to Actionaz, this page is for you. You find here some indications to help you with the first steps to be able to contribute to **actionaz**.
 +
 +====== Description of the development environment ======
 +
 +The source code of Actionaz project can be found on [[https://github.com/Jmgr/actionaz/network|GitHub]]
 +
 +First, you have to duplicate the actionaz repository
 +
 +After, you will configure your local development environment.
 +
 +===== GitHub Configuration =====
 +
 +Go to [[http://github.com]], and create a free acount (to do that you must have : a username, an e-mail and a password).
 +
 +After, by searching //actionaz// you'll find the project //Jmgr/actionaz//. By clicking on it you will have a read-only access to all the sources (alias the 'repository').
 +
 +When you access with your own GitHub account the repository of //Jmgr/actionaz// project you can fork it. To do that you only have to click on the //**Fork**// button on the home page of //Jmgr/actionaz// project.
 +
 +This operation takes only few seconds, and when it is over, you'll be redirected to your new home page of your project (the repository is called : **//<your_username>/actionaz//**)
 +
 +For the GitHub part, the hardest is done, now we will install your local environment.
 +
 +But, we describe only the installation part ... But a daily practicing of **Git/GitHub** requires more skills. To have more details on howto use Git go to the [[en:devel:Git/GitHub|Daily use of Git/GitHub]] page.
 +
 +===== Local Environment=====
 +
 +==== Ubuntu Case ====
 +
 +**Git** (inspired from : [[http://www.tech-juice.org/2012/05/07/setting-up-gitgithub-on-ubuntu-in-five-minutes/]]) :
 +
 +1- Install git
 +<code bash>
 +$ sudo apt-get install git-core git-doc
 +</code>
 +
 +2- Configure git
 +<code bash>
 +$ git config --global user.name "UserName"
 +$ git config --global user.email "myemail@provider.fr"
 +</code>
 +
 +Enable colors when outputting to terminal:
 +<code bash>
 +$ git config --global color.ui true
 +</code>
 +
 +3- Generate Cryptographic keys [Be sure to have a passphrase ready]
 +<code bash>
 +$ ssh-keygen -t rsa -C "myemail@provider.fr" -f ~/.ssh/git_rsa
 +</code>
 +
 +4- Add Public Key to GitHub
 +
 +Copy all contents of ''~/.ssh/git_rsa.pub'' and add it to your Github profile.
 +
 +5- Tell SSH to use the new Key
 +<code bash>
 +$ ssh-add ~/.ssh/git_rsa
 +</code>
 +
 +6- Test connection to GitHub
 +<code bash>
 +$ ssh -T git@github.com
 +Hi <user>! You've successfully authenticated, but GitHub does not provide shell access.
 +</code>
 +
 +7- Clone the repository and start coding
 +<code bash>
 +$ git clone git@github.com:<votre user>/actionaz.git
 +</code>
 +
 +----
 +**QT and minimum stuff to compile :**
 +
 +1- The required packages to compile the project
 +
 +<code bash>
 +sudo apt-get install build-essential libqt4-dev qtmobility-dev libxtst-dev libnotify-dev libopencv-dev libboost-dev qtscript-tools
 +</code>
 +
 +2- Installing QTcreator
 +
 +It is not mandatory, but this tool give a lot of confort to the developper. It's up to you.
 +<code bash>
 +sudo apt-get install qtcreator
 +</code>
 +
 +3- Howto respect the coding convention
 +
 +For actionaz project, use Tab of 4 characters. In QTcreator go to the //Tools// entry of the main menu, then //Options...//. In the new window select //C++//, duplicate the original configuration and name it actionaz. You can select the options to have a coding style compatible with the actionaz project.
 +
 +==== Windows Case ====
 +TODO
 +
 +===== Howto Compile Actionaz ? =====
 +
 +  * Go in the directory containing the sources, then :
 +<code bash>
 +$ qmake -r
 +$ make
 +</code>
 +  * To compile messages in your own language :
 +<code bash>
 +$ make locale_release
 +</code>
 +To translate strings in the source code, go to the page [[en:devel:translate|translate]]
 +  * To launch your version of ''actionaz'' :
 +<code bash>
 +$ ./actionaz
 +</code>
 +
 +----
 +
 +
 +
 +===== Going to see the code ? =====
 +
 +Your development environment is ready ! We can go fight with the [[en:devel:code_source|code]] !
 +
 +The project coding-style is described [[en:devel:coding-style|here]]
 +
 +----
 +
 +Other languages for this page : [[fr:devel|(fr)]]