|
|
||
|---|---|---|
| .. | ||
| .vscode | ||
| src | ||
| .gitignore | ||
| Makefile | ||
| README.md | ||
README.md
GCC_Project
Description
This is a template for C projects using make and gcc.
Setup
To make this template work you will need to install make and gcc.
On Debian 13 the command is :
sudo apt install make gcc
Usage
In vscode open your task runner and use the different tasks :
- Build : Build the current project
- Clean : Clean build directory
- Run : Run the compiled executable
- Build Verbose : Build with verbosity on (show the commands called by make while building the project)
They correspond to calling make with the following :
- Build : make
- Clean : make clean
- Run : make run
- Verbosity on : make ... VERBOSE=1 ; You can add verbosity to any task that you want
If you want to add more source files in your project, add their path in the SOURCES variable in the Makefile. For exemple to add src/wifi/udp_client.c you should do something like this :
# Source files
SOURCES := \
src/main.c \
src/wifi/udp_client.c
You can also add include drectories for headers : TIP : Add the same path to your c_cpp_properties.json in the .vscode folder in the includePath list, like this you don't have include errors by IntelliSense
# Include directories
INCLUDE_DIRS = lib/super_extra/include/
.vscode/c_cpp_properties.json
{
"configurations": [
{
"name": "Default",
"includePath": [
"lib/super_extra/include/"
]
}
],
"version": 1
}
You can change the name of the executable and the build dir too (don't forget to change it in the .gitignore):
# Build folder
BUILD_DIR = build_dir
#...
# Output target name
OUTPUT := BestExecOfHumanity
And change the compiler and linker args as you want :
# Flags
CCFLAGS = -Wall -Wextra -std=c17 -g -no-pie
LDFLAGS = -no-pie