Нужна помощь в настройке meson / ninja для кросс-компиляции - PullRequest
0 голосов
/ 01 ноября 2019

Я пытаюсь кросс-компилировать приложение gstreamer. шаблон, который у меня есть, использует мезон и ниндзя для сборки и компиляции.

верхняя папка мезон:

project('gst-template', 'c', version : '1.17.0.1', license : 'LGPL')

plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0')

cc = meson.get_compiler('c')

gst_version = meson.project_version()

api_version = '1.0'

gst_dep = dependency('gstreamer-app-1.0',
    fallback : ['gstreamer', 'gst_dep'])

subdir('gst-app')
subdir('gst-plugin')

исходная папка проекта мезон:

app_sources = [
  'src/PIPEX.c',
  'src/C420to444.c' ,
  'src/C444to420.c'
  ]

executable('PIPEX', app_sources, dependencies : [gst_dep])

Мне также нужнобиблиотеки gstreamer в архитектуре armhf. что я сделал до сих пор:

  • dpkg --add-architecture armhf

  • добавил следующий репо в sources.list deb [arch=armhf] http://ports.ubuntu.com/ bionic main universe

  • apt-get install crossbuild-essential-armhf Затем я попытался установить пакеты gstreamer с помощью apt-get :armhf, но у меня возникли ошибки зависимости из-за версий пакетов.

1 - как можноИзменить компилятор на arm-linux-gnueabihf-gcc? (уже установлен в моем каталоге petalinux).

2 - как мне получить библиотеки armhf, не компилируя их самостоятельно? Я на правильном пути здесь? или лучше сам скомпилировать их с Scratchbox? (У меня нет опыта работы с Scratchbox)

...