LINUX.ORG.RU

История изменений

Исправление i-rinat, (текущая версия) :

да они там совсем поехавшие

Тебе просто странный совет дали.

project(program C)

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")

find_package(PkgConfig REQUIRED)
pkg_check_modules(ALSA alsa REQUIRED)

set(SOURCE_FILES
    file.c)

include_directories(${ALSA_INCLUDE_DIRS}) # у некоторых библиотек заголовки в отдельной поддиректории
link_directories(${ALSA_LIBRARY_DIRS}) # некоторые библиотеки сами в каких-то поддиректориях лежат

add_executable(program ${SOURCE_FILES})
target_link_libraries(program ${ALSA_LIBRARIES})

pkg_check_modules может сразу много pkg-config модулей за раз искать.

Для некоторых библиотек есть готовые скрипты, как для pkg-config. Тогда используешь find_package(), с параметрами из описания тех скриптов. Например:

find_package(Boost COMPONENTS
    filesystem
    program_options
    signals
    system
    thread
    REQUIRED)

Исходная версия i-rinat, :

да они там совсем поехавшие

Тебе просто странный совет дали.

project(program C)

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")

find_package(PkgConfig REQUIRED)
pkg_check_modules(ALSA alsa REQUIRED)

set(SOURCE_FILES
    file.c)

include_directories(${ALSA_INCLUDE_DIRS}) # у некоторых библиотек заголовки в отдельной поддиректории
link_directories(${ALSA_LIBRARY_DIRS}) # некоторые библиотеки сами в каких-то поддиректориях лежат

add_executable(program ${SOURCE_FILES})
target_link_libraries(program ${ALSA_LIBRARIES})

pkg_check_modules может сразу много pkg-config модулей за раз искать.