CMake 常用操作有哪些?

一个简单使用 cmake 构建使用 ffmpeg 库的工程。

#设置 camke 最小版本
cmake_minimum_required(VERSION 3.15)

#设置工程名称
project(ffmpeg)

#设置 C++14 标准
set(CMAKE_CXX_STANDARD 14)

#设置 include 搜索目录 相当于 -I
include_directories(${PROJECT_SOURCE_DIR}/3rdparty/ffmpeg-4.3-win32-dev/include)

#设置 library 搜索目录 相当于 -L
link_directories(${PROJECT_SOURCE_DIR}/3rdparty/ffmpeg-4.3-win32-dev/lib)

#link_libraries 常用来链接静态库 当然也可以用来链接导入符号库 值得注意的是在 add_executable 命令之前写入
#link_libraries(
#        avcodec.lib
#        avdevice.lib
#        avfilter.lib
#        avformat.lib
#        avutil.lib
#        postproc.lib
#        swresample.lib
#        swscale.lib)
#

# 添加源文件和头文件
add_executable(${PROJECT_NAME} main.cpp Multimedia.cpp Multimedia.h)

# 复制文件
file(GLOB RUN_TIME_BIN "${PROJECT_SOURCE_DIR}/3rdparty/ffmpeg-4.3-win32-shared/bin/*.dll")
file(COPY ${RUN_TIME_BIN} DESTINATION ${PROJECT_BINARY_DIR})

# target_link_libraries 常用来链接动态库 值得注意的是在 add_executable 之后写入。
target_link_libraries(${PROJECT_NAME}
        avcodec.lib
        avdevice.lib
        avfilter.lib
        avformat.lib
        avutil.lib
        postproc.lib
        swresample.lib
        swscale.lib)
posted @ 2020-08-09 16:56  學海無涯  阅读(148)  评论(0编辑  收藏  举报