Скрежет сборки на ubuntu 20.04

Для воспроизведения некоторых старых флеш-анимаций мне нужен флеш-плеер для ubuntu 20.04. Я использовал ​​Gnash , но он больше не поставляется с ubuntu. Поэтому я попытался скомпилировать его сам, т.е. клонировал репозиторий git, сделал ./ autogen.sh , ./ configure и попытался установить все недостающие библиотеки. Это сработало, за исключением:

ERROR: GST media handling requested but gstreamer-0.10+ not found
                 Install it from http://www.gstreamer.net
                 or .deb users: apt-get install libgstreamer0.10-dev
                 or .rpm users: yum install gstreamer-devel
                 or yast users: yast install gstreamer010-devel
ERROR: Base plugins are required for gstreamer media!
       Install gstreamer-plugins-base from http://www.gstreamer.net
       or .deb users: apt-get install 
                      libgstreamer-plugins-base0.10-dev
       or .rpm users: yum install gstreamer-plugins-base-devel
ERROR: No xulrunner development package is installed!
       Install it from 
       http://releases.mozilla.org/pub/mozilla.org/xulrunner
       or .deb users: apt-get install xulrunner-dev
       or maybe     : apt-get install npapi-sdk-dev
       or maybe     : apt-get install firefox-dev
       or .rpm users: yum install xulrunner-devel
       or specify --disable-npapi

Для последнего я не нашел пакетов xulrunner-dev или npapi-dev в репозиториях ubuntu, но установил firefox -dev . Это не сработало, поэтому я использовал - disable-npapi .

Вместо плагинов gstreamer я установил версию 1.0. Но если я сделаю make , я получу следующее сообщение об ошибке:


make  all-recursive
make[1]: Entering directory '/home/myuser/build/gnash'
Making all in desktop
make[2]: Entering directory '/home/myuser/build/gnash/desktop'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/myuser/build/gnash/desktop'
Making all in libdevice
make[2]: Entering directory '/home/myuser/build/gnash/libdevice'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/myuser/build/gnash/libdevice'
Making all in libbase
make[2]: Entering directory '/home/myuser/build/gnash/libbase'
sed -e 's|@DEFAULT_FLASH_PLATFORM_ID[@]|LNX|g' -e 's|@DEFAULT_FLASH_MAJOR_VERSION[@]|10|g' -e 's|@DEFAULT_FLASH_MINOR_VERSION[@]|1|g' -e 's|@DEFAULT_FLASH_REV_NUMBER[@]|999|g' -e 's|@DEFAULT_STREAMS_TIMEOUT[@]|60|g' -e 's|@DEFAULT_SOL_SAFEDIR[@]|~/.gnash/SharedObjects|g'  './gnashrc.in' >gnashrc
make[2]: Leaving directory '/home/myuser/build/gnash/libbase'
Making all in libmedia
make[2]: Entering directory '/home/myuser/build/gnash/libmedia'
  CXX      libgnashmedia_la-AudioDecoderGst.lo
In file included from gst/AudioDecoderGst.cpp:20:
gst/AudioDecoderGst.h:27:10: fatal error: gst/gst.h: No such file or directory
   27 | #include <gst/gst.h>
      |          ^~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:1126: libgnashmedia_la-AudioDecoderGst.lo] Error 1
make[2]: Leaving directory '/home/myuser/build/gnash/libmedia'
make[1]: *** [Makefile:1163: all-recursive] Error 1
make[1]: Leaving directory '/home/myuser/build/gnash'
make: *** [Makefile:1071: all] Error 2

Итак, как я могу заставить gnash работать на ubuntu 20.04?

2
задан 20 November 2020 в 11:19

2 ответа

Компиляция Gnash в современных системах, таких как 20.04 LTS, невозможна из-за измененных API.

Но вы можете использовать контейнер schroot с Ubuntu 18.04 LTS с установленным Gnash внутри него, как написано ниже:

sudo apt-get install schroot debootstrap -y

cat <<EOF | sudo tee /etc/schroot/chroot.d/bionic.conf
[bionic]
description=Ubuntu 18.04 bionic
directory=/srv/chroot/bionic
root-users=$USER
type=directory
users=$USER
EOF

sudo mkdir -p /srv/chroot/bionic
sudo debootstrap bionic /srv/chroot/bionic

cat <<EOF | sudo tee /srv/chroot/bionic/etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu bionic main universe multiverse
deb http://security.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
EOF

schroot -c bionic -u root apt-get update
schroot -c bionic -u root apt-get install gnash

Для его запуска используйте команду ниже:

schroot -c bionic -u $USER env DISPLAY=:0.0 gnash path/to/file.swf
1
ответ дан 3 January 2021 в 22:48

Самый простой и эффективный способ - загрузить «Автономную версию Adobe Flash Player» прямо из официальный источник Прокрутите вниз до 32/64-разрядной версии Linux.

При поиске указанной ссылки я заметил, что Adobe завершает работу Flash Player

Important Reminder: Flash Player’s end of life is December 31st, 2020. Please see the Flash Player EOL Information page for more details. 

enter image description here

1
ответ дан 3 January 2021 в 22:48

Другие вопросы по тегам:

Похожие вопросы: