gpt4 book ai didi

ffmpeg - CMAKE ExternalProject_Add 添加不需要的双引号

转载 作者:行者123 更新时间:2023-12-04 23:33:27 25 4
gpt4 key购买 nike

我有一个简单的 CMake 项目,它使用 ExternalProject_Add 来配置和编译 ffmpeg。 CMakeLists.txt 如下所示:

cmake_minimum_required(VERSION 3.2)

project(FFMpeg)

include(ExternalProject)

set(PRIVATE_LIBRARY_PATH "home/user/local/lib")
set(PRIVATE_PKG_CONFIG "home/user/local/pkgconfig")

set(FFMPEG_CONFIGURE_COMMAND echo)
if(NOT (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/FFMpeg/config.h))
set(FFMPEG_CONFIGURE_COMMAND ./configure)
set(FFMPEG_DEBUG_CONFIGURE_ARGS "--enable-x86asm --disable-doc --extra-libs=-lpthread --extra-libs=-ldl --enable-shared --enable-static --disable-avx512 --disable-optimizations --extra-cflags=-g3 --extra-cflags=-fno-omit-frame-pointer --enable-debug=3 --extra-cflags=-fno-inline --disable-stripping")
endif()

ExternalProject_Add(ffmpeg
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/ffmpeg
CONFIGURE_COMMAND export LD_LIBRARY_PATH=${PRIVATE_LIBRARY_PATH} PKG_CONFIG_PATH=${PRIVATE_PKG_CONFIG}/usr/lib/pkgconfig && ${FFMPEG_CONFIGURE_COMMAND} ${FFMPEG_DEBUG_CONFIGURE_XMA_ARGS}
BUILD_COMMAND export LD_LIBRARY_PATH=${PRIVATE_LIBRARY_PATH} PKG_CONFIG_PATH=${PRIVATE_PKG_CONFIG}/usr/lib/pkgconfig && make V=1
INSTALL_COMMAND make install
INSTALL_DIR ""
BUILD_IN_SOURCE 1
BUILD_ALWAYS 1)
但是,当执行 ExternalProject_Add 的 CONFIGURE_COMMAND 时,命令在扩展字符串 FFMPEG_DEBUG_CONFIGURE_ARGS 之间添加双引号,因此 ffmpeg 配置脚本会忽略参数:
./configure "--enable-x86asm --disable-doc --extra-libs=-lpthread --extra-libs=-ldl --enable-shared --enable-static --disable-avx512 --disable-optimizations --extra-cflags=-g3 --extra-cflags=-fno-omit-frame-pointer --enable-debug=3 --extra-cflags=-fno-inline --disable-stripping"
如何更改 CONFIGURE_COMMAND 命令行以删除双引号以允许 FFMpeg 配置脚本正确识别参数?

最佳答案

从 CMake set(...) 中删除引号解决了这个问题。我不太明白您不需要将集合的值放在双引号中。因此该集合应该是:

    set(FFMPEG_DEBUG_CONFIGURE_ARGS --enable-x86asm --disable-doc --extra-libs=-lpthread --extra-libs=-ldl --enable-shared --enable-static --disable-avx512 --disable-optimizations --extra-cflags=-g3 --extra-cflags=-fno-omit-frame-pointer --enable-debug=3 --extra-cflags=-fno-inline --disable-stripping)

关于ffmpeg - CMAKE ExternalProject_Add 添加不需要的双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65636658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com