web-dev-qa-db-fra.com

Pourquoi Aegisub n'est-il plus disponible dans Ubuntu?

J'ai récemment mis à jour Bionic Beaver mais Aegisub n'est plus disponible dans les référentiels Ubuntu.

Je ne connais aucune autre alternative et ce n'est pas la première fois que je perds un programme lors de la mise à niveau :(

Est-ce que quelqu'un sait:

  1. Pourquoi a-t-il été supprimé des dépôts Ubuntu?
  2. Toute alternative que je pourrais utiliser sans ajouter un tiers repo?

Merci ~

3
Meh

Je n'ai trouvé aucune indication quant à la raison pour laquelle Aegisub a disparu, même si je pense qu'il a été abandonné de Debian Buster (sur lequel Bionic Beaver est basé).

Mise à jour : fkraiem a trouvé l'entrée Debian correspondante et le rapport de bogue correspondant .

Malgré les problèmes de Debian sur 'Buster', j'ai réussi à compiler ma propre copie d'Aegisub sur Bionic Beaver. C'est une bonne option solide pour vous permettre de retrouver l'accès à cette application sans à l'aide d'un référentiel tiers.

Comme il s’agit d’une application plus ancienne, il a été nécessaire de masser la source avec sed, sinon il n’ya vraiment que 2 étapes simples à effectuer:

1. Dépendances et outils de construction:

Copiez et collez ce bloc de code entier dans une fenêtre de terminal pour télécharger et installer certaines dépendances et outils de construction nécessaires:

Sudo apt-get install build-essential checkinstall libx11-dev libwxgtk3.0-gtk3-dev \
libfreetype6-dev pkg-config libfontconfig1-dev libass-dev libboost1.62-all-dev \
liblua50-dev libasound2-dev libffms2-dev intltool

2. Téléchargez, compilez et installez la source:

Copiez et collez ce bloc de code entier dans une fenêtre de terminal pour télécharger, extraire, modifier, compiler et installer le code source Aegisub:

mkdir -v $HOME/aegisub_build && cd $HOME/aegisub_build
wget http://ftp.aegisub.org/pub/archives/releases/source/aegisub-3.2.2.tar.xz
tar xvf aegisub-3.2.2.tar.xz && cd aegisub-3.2.2
sed -i 's/$(LIBS_BOOST) $(LIBS_ICU)/$(LIBS_BOOST) $(LIBS_ICU) -pthread/' tools/Makefile
sed -i '46 a\#include <unicode/unistr.h>' src/utils.cpp
CPPFLAGS="-DU_USING_ICU_NAMESPACE=1" ./configure && make -j 2
Sudo checkinstall -D --install=yes --fstrans=no --pakdir "$HOME/aegisub_build" \
   --pkgname aegisub --backup=no --deldoc=yes --deldesc=yes --delspec=yes --default \
   --pkgversion "3.2.2"

La magie de sed a été tirée de nombreuses sources. On dirait que Arch et Slackware maintiennent l’application en vie :).

3. Capture d'écran:

Et une dernière capture d'écran démontrant qu'Aegisub s'exécutait avec succès sur mon système Bionic:

enter image description here

5
andrew.46

Eh bien, votre solution proposée utilise la source du fournisseur luajit fournie par la source aegisub depuis environ 2014. Dans Debian et Ubuntu, nous construisons le paquet aegisub en utilisant les bibliothèques installées par le système, qui sont régulièrement mises à niveau par les développeurs. Cela signifie qu'à partir de maintenant, nous utiliserons la version 2.1.0 de Luajit au lieu de la version 2.0.x. La procédure habituelle consiste pour les développeurs d'une application utilisant ces bibliothèques à mettre à jour leur code. Cependant, aegisub n'est plus supporté par ses développeurs ...

Et comparé à la version 2.0.x précédente de la bibliothèque luajit, il semble y avoir quelques différences pour l'interprétation du code C. L'erreur de blocage provient du fournisseur de fichiers/luabins/src/luabins.c

/* luabins Lua module API */
static const struct luaL_reg R[] =
{
  { "save", l_save },
  { "load", l_load },
  { NULL, NULL }
};

donnant l'erreur mentionnée ci-dessus:

aegisub/aegisub-3.2.2/vendor/luabins/src/luabins.c:57:30: error: array type has incomplete element type ‘struct luaL_reg’
 static const struct luaL_reg R[] =
                              ^
/home/ubuntu-xenial/Pascal/Downloads/Launchpad/aegisub/aegisub-3.2.2/vendor/luabins/src/luabins.c:57:30: warning: ‘R’ defined but not used [-Wunused-variable]
Makefile.target:99: recipe for target '/home/ubuntu-xenial/Pascal/Downloads/Launchpad/aegisub/aegisub-3.2.2/vendor/luabins/src/luabins.o' failed

Même en construisant contre lua5.2 au lieu de lua5.1, l’erreur est toujours là.

Par conséquent, puisque le gestionnaire de paquets debian ne peut contacter aucun développeur aegisub pour demander une mise à jour, cette application a été supprimée du référentiel Debian.

Pour plus d'informations, consultez:

compatibilité Lua 5.2l'élément de tableau a un type incomplet

0
Antonio