Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ubuntu cmake ошибка линковки 
:(
    Опции темы
union2
Дата 18.1.2023, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.6.2013

Репутация: нет
Всего: нет



доброго дня всем. установил себе библиотеки ffmpeg

далее скачал себе репу примеров для этой либы https://github.com/leandromoreira/ffmpeg-libav-tutorial

в проекте есть такой вот CMakeLists.txt

Код

cmake_minimum_required(VERSION 3.14)
project(FFmpeg)

add_executable(main main.cpp)

find_package(PkgConfig REQUIRED)
pkg_check_modules(AVCODEC     REQUIRED IMPORTED_TARGET libavcodec)
pkg_check_modules(AVFORMAT    REQUIRED IMPORTED_TARGET libavformat)
pkg_check_modules(AVFILTER    REQUIRED IMPORTED_TARGET libavfilter)
pkg_check_modules(AVDEVICE    REQUIRED IMPORTED_TARGET libavdevice)
pkg_check_modules(AVUTIL      REQUIRED IMPORTED_TARGET libavutil)
pkg_check_modules(SWRESAMPLE  REQUIRED IMPORTED_TARGET libswresample)
pkg_check_modules(SWSCALE     REQUIRED IMPORTED_TARGET libswscale)

target_include_directories(main INTERFACE
        ${AVCODEC_INCLUDE_DIRS}
        ${AVFORMAT_INCLUDE_DIRS}
        ${AVFILTER_INCLUDE_DIRS}
        ${AVDEVICE_INCLUDE_DIRS}
        ${AVUTIL_INCLUDE_DIRS}
        ${SWRESAMPLE_INCLUDE_DIRS}
        ${SWSCALE_INCLUDE_DIRS}
        )
target_link_options(main INTERFACE
        ${AVCODEC_LDFLAGS}
        ${AVFORMAT_LDFLAGS}
        ${AVFILTER_LDFLAGS}
        ${AVDEVICE_LDFLAGS}
        ${AVUTIL_LDFLAGS}
        ${SWRESAMPLE_LDFLAGS}
        ${SWSCALE_LDFLAGS}
        )

target_link_libraries(main avcodec avformat avfilter avdevice avdevice avutil swresample swscale)




по идее все либы прописаны для линковки но таки на ее этапе получаю 
/home/interface/devel/c++/ffmpeg/libavformat/amvenc.c:355: неопределённая ссылка на «av_packet_unref»
и еще кучу подобных ошибок

при этом нашел вариант как собрать из консоли такой командой(и мой код успешно этим вариантом собирается)

gcc -g -Wall 0_hello_world.c $(pkg-config --libs libavformat libavcodec libavdevice libavfilter libavutil libswscale libswresample) -lz -o build/hello

как я понимаю pkg-config обеспечивает поиск всех связанных библиотек и выстраивание списка в нужной последовательности по порядку зависимостей.

собственно вопрос - что я недоделал в CMakeLists.txt ?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1042 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.