В этом примере программа Client
включает функциональность программы VFS для работы с сетевым стеком (см. рис. ниже).
Библиотеки компонента VFS в составе программы
Выполняется компиляция файла реализации client.c
и компоновка с библиотеками vfs_local
, vfs_implementation
и dnet_implementation
:
CMakeLists.txt
project (client)
include (platform/nk)
# Установка флагов компиляции
project_header_default ("STANDARD_GNU_11:YES" "STRICT_WARNINGS:NO")
# Генерация файла Client.edl.h
nk_build_edl_files (client_edl_files NK_MODULE "client" EDL "${CMAKE_SOURCE_DIR}/resources/edl/Client.edl")
add_executable (Client "src/client.c")
add_dependencies (Client client_edl_files)
# Компоновка с библиотеками VFS
target_link_libraries (Client ${vfs_LOCAL_LIB} ${vfs_IMPLEMENTATION_LIB} ${dnet_IMPLEMENTATION_LIB}
Если бы программа Client
использовала файловые системы, то нужно было бы выполнить компоновку с библиотеками vfs_local
и vfs_fs
, а также с библиотеками реализации этих файловых систем. Кроме того, нужно было бы добавить в решение драйвер блочного устройства.