[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: problème de librairies




On 8/21/19 10:41 PM, Kohler Gerard wrote:
bonsoir,


je suis désolé de poser une question qui doit sembler triviale à beaucoup,

voila j'ai installé une Debian 11 sans problème,

mais je voudrais compiler des programmes en cpp avec la bibliothèque gtk-3.0


J'espère qu'il s'agit de logiciel libre. Si tu les développes, envisage de publier leur code source (par exemple en GPLv3+) en utilisant des forges (comme github ou gitlab). Inspire toi de code sources libres existants: leur étude t'apprendra beaucoup. Et en publiant ton code en libre, tu risques d'avoir un retour par des développeurs plus confirmés que toi (c'est impossible si ton code reste propriétaire).

GTK est une bibliothèque en et pour C. C'est Qt qui est pour C++ et GtkMM aussi (c'est une surcouche pour utiliser GTK en C++).


Il convient d'installer plein de dépendances. Sous Debian, un petit truc: activer les paquets sous forme source en ayant par exemple une ligne

deb-src http://ftp2.fr.debian.org/debian/ buster main non-free contrib

dans son fichier /etc/apt/sources.list puis faire apt-get update puis lancer quelquechose comme aptitude build-dep gedit pour installer toutes les dépendances source de gedit (une application GTK existante).



cependant que ce soit avec g++ en ligne de commande ou Code::Block je n'ai que des erreurs de compilation car le compilateur n'arrive pas à trouver le chemin des bibliothèques qui sont bien installées.


Je déconseille les outils comme Code::Blocks qui cachent ce qui se passe en dessous. La ligne de commande dans un terminal, c'est ce qu'il y a de mieux pour apprendre à programmer. On la comprend mieux qu'une interface clickodromatique (apparemment plus facile, mais en réalité elle automatise et te cache trop de choses: les compilateurs tels que GCC ou Clang sont toujours en ligne de commande et requierent d'être combinés avec plein d'autres outils, y compris les versionneurs  tels que git et les automates de constructions à la make ou ninja ou omake, etc etc...). La philosophie d'Unix, c'est depuis les années 1970 la combinaison lucide d'outils élémentaires spécialisés (souvent utilisés dans un terminal).


Il faudrait donner la ligne de commande utilisée. En pratique, apprendre à utiliser au moins GNU Make (donc prendre l'heure nécessaire pour en lire la documentation) et à écrire un bon Makefile qui utilise correctement pkg-config. Voir https://stackoverflow.com/a/20585574/841108 pour l'inspiration.

Librement

-- 
Basile STARYNKEVITCH   == http://starynkevitch.net/Basile
opinions are mine only - les opinions sont seulement miennes
Bourg La Reine, France; <basile@starynkevitch.net>
(mobile phone: cf my web page / voir ma page web...)

Reply to: