Simplified doc-site generation
[AGL/documentation.git] / docs / 3_Developer_Guides / 2_Building_Microservices_Natively / 4_getting-source-files.md
1 ---
2 edit_link: ''
3 title: Getting Your Source Files
4 origin_url: >-
5   https://raw.githubusercontent.com/automotive-grade-linux/docs-sources/master/agl-documentation/host-configuration/docs/4-getting-source-files.md
6 ---
7
8 <!-- WARNING: This file is generated by fetch_docs.js using /home/boron/Documents/AGL/docs-webtemplate/site/_data/tocs/devguides/master/host-configuration-developer-guides-devguides-book.yml -->
9
10 # Getting Your Source Files
11
12 Now that you have your host ready, packages installed, and the binder
13 daemon ready, you can get your source files together.
14 This example uses the `helloworld-service` binding, which is
15 a project hosted on GitHub, is written in the C programming language,
16 depends on the `libjson-c` library, and uses `cmake` for building.
17
18 ## Install Programs and Libraries You Need for this Example
19
20 For this example, you need to have the following installed on your host:
21
22 ```bash
23 git
24 cmake
25 pkg-config
26 gcc
27 g++
28 json-c
29 ```
30
31 **NOTE:** If you are building a different binding, you need to make sure
32 you have all the programs and libraries needed to build that particular
33 binding.
34
35 ### Installing on Debian
36
37 Use the following commands if your native Linux machine uses the Debian
38 distribution:
39
40 ```bash
41 sudo apt-get install git cmake pkg-config gcc g++ libjson-c-dev
42 ```
43
44 ### Installing on OpenSUSE
45
46 Use the following commands if your native Linux machine uses the OpenSUSE
47 distribution:
48
49 ```bash
50 sudo zypper install git cmake pkg-config gcc gcc-c++ libjson-c-devel
51 ```
52
53 ### Installing on Fedora
54
55 Use the following commands if your native Linux machine uses the Fedora
56 distribution:
57
58 ```bash
59 sudo dnf install git cmake pkg-config gcc gcc-c++ json-c-devel.x86_64
60 ```
61
62 ## Cloning the helloworld-service repository
63
64 Use Git to create a local repository of the
65 [helloworld-service](https://github.com/iotbzh/helloworld-service) binding from
66 [IoT.BZH](https://iot.bzh/en/).
67 The following command creates a repository named `helloworld-service` in the
68 current directory.
69 The "--recurse-submodules" option ensures that all submodules (i.e. repositories
70 within `helloworld-service`) are initialized and cloned as well.
71
72 ```bash
73 git clone https://github.com/iotbzh/helloworld-service.git --recurse-submodules
74 ```