Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Adding Multiple Sources | Project Structure and Organization
Quizzes & Challenges
Quizzes
Challenges
/
Introduction to CMake

bookAdding Multiple Sources

As your project grows, it is common to split your code into multiple files to keep it organized and easier to maintain. In CMake, you add all the source files that belong to your program inside the add_executable command.

In this example, main.c contains the program entry point, while helper.c contains supporting functions. Both files are compiled and linked into a single executable by CMake.

main.c

main.c

helper.c

helper.c

helper.h

helper.h

CMakeLists.txt

CMakeLists.txt

copy
1234567
#include <stdio.h> #include "helper.h" int main() { print_message(); return 0; }

When working with multiple source files, functions shared between files must be declared in header files. In this example, the function print_message() is declared in helper.h and implemented in helper.c. Including the header file allows main.c to use the function correctly.

In CMakeLists.txt, you list every source file that should be compiled:

  • CMake compiles each .c or .cpp file separately.
  • The linker combines them into one executable.
  • Header files are not compiled but tell the compiler how functions and data are defined.

CMake handles the build process automatically, but it is your responsibility to manage function declarations using header files.

question mark

How do you specify multiple source files for an executable in CMakeLists.txt?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

bookAdding Multiple Sources

Svep för att visa menyn

As your project grows, it is common to split your code into multiple files to keep it organized and easier to maintain. In CMake, you add all the source files that belong to your program inside the add_executable command.

In this example, main.c contains the program entry point, while helper.c contains supporting functions. Both files are compiled and linked into a single executable by CMake.

main.c

main.c

helper.c

helper.c

helper.h

helper.h

CMakeLists.txt

CMakeLists.txt

copy
1234567
#include <stdio.h> #include "helper.h" int main() { print_message(); return 0; }

When working with multiple source files, functions shared between files must be declared in header files. In this example, the function print_message() is declared in helper.h and implemented in helper.c. Including the header file allows main.c to use the function correctly.

In CMakeLists.txt, you list every source file that should be compiled:

  • CMake compiles each .c or .cpp file separately.
  • The linker combines them into one executable.
  • Header files are not compiled but tell the compiler how functions and data are defined.

CMake handles the build process automatically, but it is your responsibility to manage function declarations using header files.

question mark

How do you specify multiple source files for an executable in CMakeLists.txt?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 2
some-alt