Bonjour:
référence https://tgui.eu/
voici comment installer TGUI
ce logiciel :
un framework qui peut s'utiliser comme gtk par ex la communauté est très active
il vous faudra un peu de persévérance mais les exemple permettent de prendre rapidement la température ......
d'autre part il y a un designer gui-builder qui à la manière de gtkbuilder là aussi il avance à grand pas mais la version en cours vous permettra de monter le cheval ....( c'est aussi pour cela qu'installer à la main vous sera profitable et vous permet de mieux connaître votre environnement )
gui-builder est un peu déroutant n’oublier pas de mettre le chemin complet lorsque la fenêtre s’ouvrira.
il est assez complet (les widgets) bien-sur le reste arrive mais on peu dire qu'il est opérationnel le fondamental est solide.
personnellement j'ai été étonné par le professionnalisme lors d'un projet et que vous embarqué l’ensemble 8mo en mémoire mais on peu l'alléger et réguler la fréquence , c'est logiciel qui permet de faire aussi bien de l'animation audio et gestion
l'installation paraît monstrueuse mais enfin de compte en moins de 5 mn votre environnement est opérationnel.
particularité pour GCC Linux: Debian / Ubuntu et ses dérivés. pour les autres distribution les mêmes packets .
pourquoi cette installation , les packages (TGUI) ne sont pas au dernier niveau. (développement très très actif )
_____________________________________________________________________________________________
vous devez avoir installer SFML
préalable avoir installer GCC
ouvrir votre session administrateur travail sous sudo (attention)
ouvrir votre terminal
apt list --installed | grep -i libtgui*
afin de ne pas avoir de conflit par exemple si vous avez installer TGUI depuis un dépôt
veuillez les désinstaller puis reprendre la procédure depuis le début
pour TGUI je vais vous faire la procédure comme celle de SFML, cela vous permettra de vous libéré de toutes entraves de dépendances et de profité du développement très actif.
==================================================
TGUI
récupération de la dernière version stable
prendre
ouvrir un terminal exécuter les commandes
(une fenêtre apparaît )
1)
--> votre répertoire ou vous extrait votre zip
2)
--> $home/tgui
pour Linux tout est déjà prêt
3)
choisir ->normalement vous ne devriez pas avoir de beug si vous avez déjà installer GCC etc...
4)
puis -> fermer le programme
==================================================
on prépare l’environnement (ps juste pour la compilation et l'installation)
exécuter les commandes toujours dans le terminal
export PATH=$PATH:/home/votre_User/TGUI-0.8.5/
export PATH=$PATH:/home/votre_User/TGUI/
-----------------------------------------------
compilation TGUI
a) normalement il fini par "done" sinon ???? corriger généralement c'est parce qu'il vous manque un module .... etc.... puis refaire make
installation automatique :
b) génère le fichier install_manifest.txt
qui comporte l'ensemble des fichiers et leurs chemins
comme ça il est très simple de les enlevés . (cela reste propre)
maintenant il faut dire au system comment lier tout cela
------------------------------------------------------------------------------------------------------------------------------------------
ldconfig crée, mises à jour et supprime les liens nécessaires et le cache (pour une utilisation par l'éditeur de lien, ld.so)
les plus récentes bibliothèques partagées trouvées dans les répertoires spécifiés sur la ligne de commande,
dans le fichier / etc / ld. so.conf, et dans les répertoires de confiance (/ usr / lib et / lib).
Donc, en supposant que libtgui....so est situé dans /usr/local/lib/ (si vous en êtes ici pas de problème)
créer un simple fichier tgui.conf comme ceci
sudo echo "/usr/local/lib" > tgui.conf
on copy
sudo cp tgui.conf /etc/ld.so.conf.d
Exécuter ldconfig afin de configurer les liaisons run-temps l' éditeur de liens.
====================================================================
maintenant on passe dans l'environnement développeur
copier dans .bachrc si il n'existe pas on l'ouvre et si cela n'ai pas déjà fait
# Chemin MODULE* ex:SFML or FOX or TGUI C++
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_RUN_PATH=$LD_RUN_PATH:/usr/local/lib
enregistrez
====================================================================
exemple makefile
projet que vous trouverez sur la page tgui
ouvrir un fichier makefile écrire ci-dessous :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
| # nom de l'exécutable :
# nom de l'executable :
PROJET = test
# Adresse des sources, des objets et des includes :
SRCDIR = $(CURDIR)/src/
OBJDIR = $(CURDIR)/obj/
BINDIR = $(CURDIR)/bin/
INCLUDES =\
-I$(SRCDIR)
INCLIB =
# .cxx à moduler etc.....
OBJCPP = \
$(patsubst %.cxx,$(OBJDIR)%.o,$(notdir $(wildcard $(SRCDIR)*.cxx))) \
$(patsubst %.cpp,$(OBJDIR)%.o,$(notdir $(wildcard $(SRCDIR)*.cpp)))
#/usr/lib/x86_64-linux-gnu/libdl.so
RESULT= $(BINDIR)$(PROJET)
# choix du compilateur :
CXX = g++
# options compilations : -lctemplate -lX11 -pthread -fpic -DPIC '-DUNICODE=1' -no-pie
# -------------------------------------------------------------------
# production
# -------------------------------------------------------------------
ifeq ($(PROD), true)
CPPFLAGS= -std=c++17 -Wall -fexceptions -pedantic-errors -Wunused-variable -Wextra -Wparentheses -Waddress \
-ftree-coalesce-vars -fstack-clash-protection -fstack-protector-all \
-Wsign-compare -fpermissive -fstrict-overflow \
`pkg-config --cflags sfml-all` \
`pkg-config --cflags tgui`
CXXFLAGS= -std=c++17 -Wall -fexceptions -pedantic-errors -Wextra -Wparentheses -Waddress \
-ftree-coalesce-vars -fstack-clash-protection -fstack-protector-all \
-Wsign-compare -fpermissive -fstrict-overflow \
`pkg-config --cflags sfml-all` \
`pkg-config --cflags tgui`
LDFLAGS= `pkg-config sfml-all --libs` `pkg-config tgui --libs`
OPTIMIZE = -fexpensive-optimizations -Os -s
# -------------------------------------------------------------------
# debug
# -------------------------------------------------------------------
else
CPPFLAGS= -std=c++17 -O3 -ggdb -g3 -DDEBUG \
-Wall -fexceptions -Wextra -pedantic-errors -Wunused-variable -Wparentheses -Waddress \
-Wsign-compare -fpermissive \
-ftree-coalesce-vars -fstrict-overflow \
`pkg-config --cflags sfml-all` \
`pkg-config --cflags tgui`
CXXFLAGS= -std=c++17 -O3 -ggdb -g3 -DDEBUG \
-Wall -fexceptions -Wextra -pedantic-errors -Wunused-variable -Wparentheses -Waddress \
-Wsign-compare -fpermissive \
-ftree-coalesce-vars -fstrict-overflow \
`pkg-config --cflags sfml-all` \
`pkg-config --cflags tgui`
LDFLAGS = -no-pie `pkg-config sfml-all --libs` `pkg-config tgui --libs`
OPTIMIZE =
endif
# -------------------------------------------------------------------
# compilation -no-pie
# -------------------------------------------------------------------
# compilation obj : ex @echo $(OBJCPP) liste variable
# regle edition de liens
all : $(OBJCPP)
@echo $(HOME)
# regle de compilation des sources objet
$(CXX) $(OBJCPP) -o $(RESULT) $(OPTIMIZE) $(LDFLAGS) $(INCLIB)
du -sh $(RESULT)
ifeq ($(PROD), true)
rm -rf $(OBJDIR)*.o
endif
$(OBJDIR)%.o: $(SRCDIR)%.cxx
$(CXX) $(CXXFLAGS) $(INCLUDES) -o $@ -c $<
$(OBJDIR)%.o: $(SRCDIR)%.cpp
$(CXX) $(CPPFLAGS) $(INCLUDES) -o $@ -c $<
# pour effacer tous les objets :
clean : $(OBJDIR)
rm -rf $(OBJDIR)*.o
# pour effacer l'executable :
mrprope: clean
rm -rf $(RESULT) |
============================================================================
UNISTALL
============================================================================
merci à stackoverflow.com
https://stackoverflow.com/questions/...-library-in-li
procédure uninstall sans risque
toujours dans le terminal (on sait ce que l'on fait )
Méthode (install_manifest.txt)
Si un fichier install_manifest.txt existe dans votre répertoire source,
il doit contenir les noms de fichier de chaque fichier créé par l’installation.
Commencez donc par vérifier la liste des fichiers et leur heure de modification:
001) (répertoire ou ce trouve votre résultant d'installation il doit y avoir "install_manifest.txt" )
002)
sudo xargs -I{} stat -c "%z %n" "{}" < install_manifest.txt
Vous devriez obtenir zéro erreurs et les mod fois des fichiers indiqués doivent être ou après le temps d'installation.
Si tout est OK , vous pouvez les supprimer en une seule fois:
003)
mkdir deleted-by-uninstall
004)
sudo xargs -I{} mv -t deleted-by-uninstall "{}" < install_manifest.txt
L' utilisateur Merlyn Morgan-Graham a cependant un avis sérieux au sujet de cette méthode que vous devez garder à l' esprit
(copié ici textuellement): « . Méfiez - vous des fichiers qui pourraient également avoir été installés
par d' autres paquets La simple suppression de ces fichiers [...] Et briser les autres paquets ????
« . . C'est la raison pour laquelle nous avons créé le deleted-by-uninstall répertoire et les fichiers déplacer au lieu de les supprimer.
puis :
005)
sudo rm -r /usr/local/lib/cmake/TGUI
006)
sudo rm -r /usr/local/include/TGUI*
007)
sudo rm -r /usr/local/share/tgui-0.8*
à vos clavier
@bientôt ( procédure tester et roule en TEST) , l'idée est de développer sur linux (bien maîtriser ) et de pouvoir sans changer le code de recompiler sur les autres plateformes.....
Partager