---
# System prepended metadata

title: Regulart Meeting (2020.3.15)
tags: [Regular Meeting, DeWei]

---

# Regulart Meeting (2020.3.15)

* Native compile sw (my PC), remote execute (SDCard on XVC_Pynq_Z2)

![image alt](https://i.imgur.com/lC0r757.png)

## 2. The Compiler arm-gcc
* Compiler for armV7 in native host
	![](https://i.imgur.com/9Uyi24Z.png)

* [The Linaro-GCC](https://en.wikipedia.org/wiki/Linaro)

* Supported verison of compiler (in arm-v7)
  * C11 
    * Newest version is c17/18
    * c17/18 has not new feture
    * c17/18 only fix bug for c11
  * C++17
    * Newest version is C++20
    * Some new feture

* About arm-gcc
	* arm-linux-gnueabihf-gcc-linaro (ok)
	* arm-none-gnueabihf-gcc-linaro (x)
	* arm-linux-gnueabi-gcc-linaro (x)
	* arm-none-gnueabi-gcc-linaro (x)
	* why?????????????
	* gnueabi**hf**, what's hf?
		* ![](https://i.imgur.com/rFN3fiE.png)
	* **arm-none-...** vs **arm-linux-...**
		* Try following 2 programs
		*  compile with **arm-none-…**
		```C	
		/* prog.1 */
		#include <stdio.h>
		int main () {
			printf("Hello Kitty");
		}
		```
		```C
		/* prog.2 */
		#include <unistd.h>
		int main () {
			/* open() is a system call is supported by unix (linux) */
			open(...);
		}	
		```
		* `prog.1` passed compile.
		* Compiler raise error when you compile `prog.2`:
			```
			can't find header unistd.h
			```
		* Reason:
			* `unistd.h` is header for **UNIX(Linux) Standard**
				* Depending on *how OS to implement*
			* `stdio.h` is header for **C Standard**
			* Compile with **arm-linux-...** can pass both prog.1 and prog.2

		

###### tags: `Regular Meeting` `DeWei`