web-dev-qa-db-fra.com

Installation de tar.bz2 sans .configure mais avec Makefile dedans

J'ai téléchargé targui à partir de sourceforge et il est contenu dans une archive tar.bz2 sans fichier .configure et sans instructions d'installation. Cependant, l'archive contient un Makefile. En regardant le Makefile (et le peu de documentation sur sourcefourge), les seules dépendances sont qt4, qui sont installées sur mon système sous/usr/share/qt4, comme cela semble être le cas pour le Makefile.

Qu'est-ce que je suis censé faire pour installer ce paquet?

Lien vers la page sourceforge: https://sourceforge.net/projects/targui/

MISE À JOUR

Le Makefile a ce commentaire:

#

Makefile pour la construction: targui
Généré par qmake (2.01a) (Qt 4.3.2) le: Père Dez 28 12:32:13 2007
Projet: targui.pro
Modèle: app
Commande:/usr/bin/qmake -unix -o Makefile targui.pro

#

Donc, à partir du répertoire contenant le dossier targui, j'ai essayé:

/ usr/bin/qmake -unix -o Fichier Makegile targui.pro

mais terminal dit:

qmake: impossible d'exécuter '/ usr/lib/x86_64-linux-gnu/qt4/bin/qmake': aucun fichier ou répertoire de ce type

MISE À JOUR 2

Construit selon les instructions de NOorbert. Il segfaults

Mainwindow.cpp fixe, il se présente comme suit:

void MainWindow::TabChanged(int i) {

if (newAct) newAct->setEnabled(i > 0);
if (openAct) openAct->setEnabled(i > 0);
if (saveAct) saveAct->setEnabled(i > 0);
if (saveAsAct) saveAsAct->setEnabled(i > 0);

}

et changé les références tar à/bin dans le même fichier

.targui encore segfaults

3
Gumbo

Vous devez installer qmake for Qt4 et les packages de développement correspondants:

Sudo apt-get install qt4-qmake libqt4-dev

puis lancez make:

cd ~/Downloads
tar -xf targui-0.3_beta.tar.bz2
cd targui
make

puis lancez l'application

./targui

mais il segfaults sur mon Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, Ubuntu 18.04 LTS:

Segmentation fault (core dumped)

Ensuite, vous devez décider - que voulez-vous atteindre en compilant une application à partir de 2008, dix ans après.
Si vous avez simplement besoin d’un outil d’archivage graphique, vous pouvez utiliser File Roller (sur GNOME), Engrampa (sur MATE), etc.

2
N0rbert

Construisez targui comme dans la réponse de N0rbert, puis lisez ci-dessous pour obtenir le binaire à exécuter.

  • Le segfault targui au démarrage est dû au MainWindow::TabChanged de mainwindow.cpp déréférencement des pointeurs invalides, et l'ajout de contrôles permet au programme de démarrer. Par exemple, remplacez newAct->setEnabled(i > 0); par if (newAct) newAct->setEnabled(i > 0); et procédez de même pour les trois autres pointeurs.

  • mainwindow.cpp contient des chaînes codées en dur, telles que /usr/bin/tar, qui pourraient ne pas pointer vers des fichiers binaires existants. Par exemple, la tar d'Ubuntu est dans /bin, donc corrigez-les en conséquence.

targui screenshot

2
dsstorefile1

Pour que targui ne se faille pas, les modifications à mainwindow.cpp en fonction de la réponse dsstorefile1 doivent être effectuées AVANT et PAS APRÈS la compilation, selon la réponse de NOrbert.

0
Gumbo