Aide à la compilation (besoin de vieilles bibliothèques)

Je dois faire fonctionner un logiciel scientifique, mais il nécessite des bibliothèques plus anciennes et je ne veux pas vider mon système actuel. J’ai pensé utiliser une ancienne version d’ubuntu dans une machine virtuelle. Mais de quoi aurais-je besoin?

Le logiciel peut être obtenu ici

Le fichier Lisez-moi dit:

Le Makefile suppose que vous utilisez wxWindows 2.4.2 et qu’il est installé dans / usr (/ usr / lib /, / usr / include / wx, etc …). Il se peut toutefois qu’il se trouve dans / usr / local; dans ce cas, modifiez la ligne 18 du Makefile de manière appropriée.

De plus, wxWindows 2.4.2 est en conflit avec les versions très récentes de GTK, vous pouvez donc utiliser la version la plus récente de wxWindows (2.6.0). Cependant, cela nécessiterait également de changer le Makefile, à savoir les lignes 16-18. En outre, cette nouvelle version de wxWindows divise les bibliothèques en différentes parties. base, kernel et gl. Vous devrez créer un lien vers toutes ces bibliothèques.

Si vous m’envoyez un e-mail à [email protected], je peux vous envoyer un Makefile personnalisé à la version 2.6.

UPDATE: Mon code ne fonctionne pas avec 2.6. 2.4.2 ne comstack pas avec les nouvelles versions de g ++. C’est donc un problème que je n’ai pas eu le temps de résoudre. Pardon. Votre seul espoir est d’utiliser un ancien g ++.

Le vrai problème que je vois avec les instructions que vous avez postées est qu’elles demandent une ancienne version de g++ : l’installation d’une version de bibliothèque différente est relativement simple, l’installation et l’exécution d’un compilateur différent n’est pas une mince affaire. De plus, les instructions ne disent pas quelle version de g ++ vous devriez utiliser …

Si je devais le faire, je procéderais comme suit:

  1. Comme le révèle une recherche dans les archives de paquets Ubuntu , aucune version d’Ubuntu ne dispose de wxWindows 2.4.2; dapper a 2.4.4, hardy et jaunty ont 2.4.5. Cela pourrait être une version compatible (les numéros de niveau de correctif ne changent pas l’API) mais on ne peut le savoir qu’en essayant … Ils devraient également avoir le bon g ++ (puisqu’il a été utilisé pour comstackr le paquet Ubuntu).

  2. Installez le programme deboostrap et utilisez-le pour installer une copie d’un ancien Ubuntu dans un répertoire foo :

    sudo deboostrap jaunty foo /

  3. Téléchargez les sources et placez-les dans un répertoire sous foo/

  4. Utilisez chroot pour entrer dans l’ancien environnement et comstackr:

     $ sudo -s # chroot foo/ (foo)# cd /source/directory; make 

Notez que, même dans un chroot, vous ne pouvez accéder aux fichiers que sous foo/ – c’est devenu le nouveau répertoire racine (il suffit de quitter le shell pour revenir à la normale).

Vous pouvez également utiliser une machine virtuelle au lieu d’un environnement chroot (remplacez les étapes 2., 4.); IMHO, les chroots permettent une utilisation plus transparente, bien qu’ils puissent être un peu plus difficiles à configurer.