J'ai un hébergement partagé Dreamhost, et j'essaie d'exécuter Firefox 3.0 sans tête pour l'utiliser avec Selenium.
Lorsque j'essaye de l'exécuter ( ~/local/bin/firefox/firefox
), j'obtiens le message d'erreur suivant:
error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
Comment puis-je exécuter Firefox sur Linux sans avoir besoin de ce fichier objet partagé?
Vous ne pouvez pas exécuter Firefox sans toutes les bibliothèques Gtk dont il a besoin, mais cela est facilement résolu en installant les bibliothèques. Normalement, vous installez Firefox via un système de gestion de packages et cela entraîne toutes les bibliothèques requises.
Pour exécuter Firefox normalement, vous avez besoin d'un serveur X (c'est la partie qui affiche les fenêtres et leur contenu, par opposition à des choses comme Gtk qui sont des bibliothèques que l'application utilise pour créer le contenu). C'est quelque chose que vous n'exécuteriez pas habituellement sur un serveur. Il y a très peu de choses que vous pouvez faire dans Firefox sans serveur X, je ne sais pas si Selenium en fait partie.
Pour exécuter Firefox sur votre serveur, exécutez un serveur X «virtuel». Un simple est Xvfb ( v irtual f rame b uffer X server). C'est dans la distribution du serveur X.org . Exemple d'utilisation:
la source
Tu ne peux pas; il est lié aux bibliothèques client X et Gtk +, et je ne pense pas qu'il soit même possible de le construire sans elles.
Même dans la version sans tête de Firefox, GTK + est toujours nécessaire .
la source
Puisque Selenium est un outil de test GUI, je trouverais difficile de croire qu'il peut fonctionner sans X.
Donc, ma meilleure supposition est que votre serveur sans tête nécessite une installation X telle que celle suggérée par Gilles. Il existe un certain nombre d'alternatives similaires.
la source
Vous pouvez
xvfb-run -a firefox
la source