Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Building a Static Library | Libraries, Includes, and Build Types
Quizzes & Challenges
Quizzes
Challenges
/
Introduction to CMake

bookBuilding a Static Library

Note
Definition

A static library is a collection of compiled code that is copied directly into an executable at build time, making the program self-contained without requiring the library at runtime.

To create and use a static library in CMake, define it with add_library(... STATIC ...), then link it to your executable using target_link_libraries. Use target_include_directories to expose the library headers. CMake builds the library and links it automatically, allowing your program to use its functions.

main.c

main.c

src/hello.c

src/hello.c

src/hello.h

src/hello.h

CMakeLists.txt

CMakeLists.txt

copy
123456
#include "hello.h" int main() { say_hello(); return 0; }

When a static library is in another folder, include it with add_subdirectory, then link it using target_link_libraries. Use target_include_directories to expose the headers. This structure keeps projects organized and makes libraries easy to reuse.

app/main.c

app/main.c

libmath/math.c

libmath/math.c

libmath/math.h

libmath/math.h

CMakeLists.txt

CMakeLists.txt

libmath/CMakeLists.txt

libmath/CMakeLists.txt

copy
12345678
#include <stdio.h> #include "math.h" int main() { int result = add(3, 4); printf("3 + 4 = %d\n", result); return 0; }

A static library is a collection of object files bundled into a single archive. When linked, the library is copied directly into the executable, so no separate library file is needed at runtime. CMake handles this using add_library and target_link_libraries, resolving all dependencies during the build.

question mark

What command is used to link a static library to an executable in CMake?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

bookBuilding a Static Library

Deslize para mostrar o menu

Note
Definition

A static library is a collection of compiled code that is copied directly into an executable at build time, making the program self-contained without requiring the library at runtime.

To create and use a static library in CMake, define it with add_library(... STATIC ...), then link it to your executable using target_link_libraries. Use target_include_directories to expose the library headers. CMake builds the library and links it automatically, allowing your program to use its functions.

main.c

main.c

src/hello.c

src/hello.c

src/hello.h

src/hello.h

CMakeLists.txt

CMakeLists.txt

copy
123456
#include "hello.h" int main() { say_hello(); return 0; }

When a static library is in another folder, include it with add_subdirectory, then link it using target_link_libraries. Use target_include_directories to expose the headers. This structure keeps projects organized and makes libraries easy to reuse.

app/main.c

app/main.c

libmath/math.c

libmath/math.c

libmath/math.h

libmath/math.h

CMakeLists.txt

CMakeLists.txt

libmath/CMakeLists.txt

libmath/CMakeLists.txt

copy
12345678
#include <stdio.h> #include "math.h" int main() { int result = add(3, 4); printf("3 + 4 = %d\n", result); return 0; }

A static library is a collection of object files bundled into a single archive. When linked, the library is copied directly into the executable, so no separate library file is needed at runtime. CMake handles this using add_library and target_link_libraries, resolving all dependencies during the build.

question mark

What command is used to link a static library to an executable in CMake?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1
some-alt