User Tools

Site Tools


en:devel

Differences

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

Link to this comparison view

en:devel [2016/10/09 09:10]
en:devel [2020/02/09 13:26] (current)
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)]]