web-dev-qa-db-fra.com

Installation de Quartus (Altera | Intel, v13.1) avec des bibliothèques 32 bits

J'installe la suite logicielle Quartus via le fichier setup.sh. En essayant à l'origine de chmod, j'ai essayé d'exécuter l'exécutable du shell

via ./setup.sh

bash: ./setup.sh: /bin/env: bad interpreter: No such file or directory

puis via Sudo ./setup.sh.

Sudo: unable to execute ./setup.sh: No such file or directory

Enfin, l’utilisation de la commande Sudo bash setup.sh dans terminal génère une erreur utile:

You must have the 32-bit compatibility libraries installed for the Quartus II installer and software to operate properly.
setup.sh: line 106: /home/matt/Downloads/Software Packages/Quartus-web-13.1.0.162-linux/components/QuartusSetupWeb-13.1.0.162.run: Permission denied
setup.sh: line 106: exec: /home/matt/Downloads/Software Packages/Quartus-web-13.1.0.162-linux/components/QuartusSetupWeb-13.1.0.162.run: cannot execute: Permission denied`

J'ai essayé de télécharger ces bibliothèques, comme indiqué dans le Manuel d'installation et de licence de Quartus Online . Cela implique l'installation des bibliothèques pré-requises suivantes, répertoriées respectivement pour le logiciel ModelSim (64 bits) ainsi que pour Quartus (dépendance à 32 bits):

Sudo apt-get install

  • unixodbc unixodbc-dev libncurses-dev libzmq3-dev libxext6 libasound2 libxml2 libx11-6 libxtst6 libedit-dev libxft-dev libxi6
  • libx11-6: i386 libxau6: i386 libxdmcp6: i386 libxext6: i386 libxft-dev: i386 libxrender-dev: i386 libxt6: i386 libxtst6: i386

Qui fournit les informations suivantes:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'libncurses5-dev' instead of 'libncurses-dev'
libasound2 is already the newest version (1.1.0-0ubuntu1).
libncurses5-dev is already the newest version (6.0+20160213-1ubuntu1).
libx11-6 is already the newest version (2:1.6.3-1ubuntu2).
libxext6 is already the newest version (2:1.3.3-1).
libxi6 is already the newest version (2:1.7.6-1).
libxtst6 is already the newest version (2:1.2.2-1).
unixodbc is already the newest version (2.3.1-4.1).
unixodbc-dev is already the newest version (2.3.1-4.1).
libx11-6:i386 is already the newest version (2:1.6.3-1ubuntu2).
libxau6:i386 is already the newest version (1:1.0.8-1).
libxdmcp6:i386 is already the newest version (1:1.1.2-1.1).
libxext6:i386 is already the newest version (2:1.3.3-1).
libxft-dev:i386 is already the newest version (2.3.2-1).
libxrender-dev:i386 is already the newest version (1:0.9.9-0ubuntu1).
libxt6:i386 is already the newest version (1:1.1.5-0ubuntu1).
libxtst6:i386 is already the newest version (2:1.2.2-1).
libzmq3-dev is already the newest version (4.1.4-7).
libxml2 is already the newest version (2.9.3+dfsg1-1ubuntu0.2).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
libxft-dev : Conflicts: libxft-dev:i386 but 2.3.2-1 is to be installed
 libxft-dev:i386 : Conflicts: libxft-dev but 2.3.2-1 is to be installed
E: Unable to correct problems, you have held broken packages.

Quelle que soit l'architecture libxft que j'installe, le même message d'erreur se produit pour l'exécutable du shell lorsqu'il est exécuté avec une commande bash. Des idées qui me manquent et comment résoudre ce conflit?

1
Mr G

Ayez un peu confiance en votre capacité à résoudre un problème et creusez un peu plus loin!

En consultant (c'est-à-dire en utilisant vim setup.sh) le fichier Shell, une liste des dépendances vérifiées peut être générée. Dans le script Shell, j'ai trouvé:

for item in libstdc++ glibc libX11 libXext libXau libXdmcp freetype fontconfig expat

Bibliothèques Ubuntu équivalentes installées:

Sudo apt-get install libstdc++6:i386 libc6:i386 libx11-dev:i386 libxext-dev:i386 libxau-dev:i386 libxdmcp-dev:i386 libfreetype6:i386 fontconfig:i386 expat:i386

Après avoir visionné le script un peu plus et reconnu que la dépendance de la bibliothèque 32 bits s’imprimerait indépendamment de l’existence du module résultant de l’observation du code Shell, je suis retourné à la erreur réelle, comme ci-dessus.

setup.sh: line .../QuartusSetupWeb-13.1.0.162.run: Permission denied
setup.sh: line 106 exec: ... 162.run: cannot execute: Permission denied

En particulier, les commandes utilisant bash setup.sh ou Sudo bash setup.sh ne pouvaient pas ensuite exécuter les fichiers .run, en raison des propriétés de permission de ces fichiers. Un correctif simple, autorisant les droits exécutables de ces fichiers répertoriés, a résolu tous les problèmes.

chmod +x QuartusSetupWeb-13.1.0.162.run
1
Mr G

Vérifiez la directive de l’interprète Shebang pour savoir quels interprètes sh sont réellement utilisés pour setup.sh. Dans le cas de Quartus 9.0, c’est "#!/bin/csh" qui indique C-Shell et n’a pas été installé par défaut dans Ubuntu.

1
Kirill Stepanoff