IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GCC Discussion :

Install FOX-TOOLKIT last version DEV


Sujet :

GCC

  1. #1
    Membre éclairé

    Homme Profil pro
    Retraite
    Inscrit en
    octobre 2005
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : octobre 2005
    Messages : 341
    Points : 706
    Points
    706
    Billets dans le blog
    1
    Par défaut Install FOX-TOOLKIT last version DEV
    Bonjour ,

    LINUX

    exemple:
    fox-snapshot.tar.gz (development snapshot). dossier ->fox-1.7.65 correspond à la 1.7.64.1 ou prenez fox-1.7.64.tar.gz etc...

    comment avoir la dernière version qui n'est pas dans vos dépôts:
    Mais validé et fonctionnel (voir arch / fédora / OpenSuze / ect mis déjà dans leurs dépôts ex: pour manjaro : fox-devel correspond à la 1.7.64.1 )

    pour ubuntu / debian et dérivé qui eux n'ont pas dans les dépôts la release-devel.







    1)

    lien : http://www.fox-toolkit.org/

    recuperer le fox-snapshot.tar.gz (development snapshot).

    extraction..

    il est préférable de vous mettre dans votre user administrateur.

    vérifiez que vos packages sont dans votre system: avec apt list --installed | grep -ivotre-package

    si comme moi ---> ils sont dans le system de base pas de problème (Normalement ce sont des packages installer par défaut)

    sinon installer les packages ---> sudo apt install votre package


    vous devez installer la partie package-dev (*)

    apt list --installed | grep -i libc6
    apt list --installed | grep -i libfontconfig1
    apt list --installed | grep -i libfreetype6
    apt list --installed | grep -i libgcc1
    apt list --installed | grep -i libgl1*
    (*)
    sudo apt install libgl1-mesa-dev mesa-common-dev

    apt list --installed | grep -i libglu1*
    (*)
    sudo apt install libglu1-mesa-dev

    apt list --installed | grep -i libjpeg8*
    (*)
    sudo apt install libjpeg-turbo8-dbg libjpeg-turbo8-dev libjpeg8-dbg libjpeg8-dev


    apt list --installed | grep -i libpng16-16
    apt list --installed | grep -i libstdc++6

    apt list --installed | grep -ilibtiff5*
    (*)
    sudo apt install libjbig-dev liblzma-dev libtiff5-dev libtiffxx5

    apt list --installed | grep -i libx11-6
    apt list --installed | grep -i libxcursor1
    apt list --installed | grep -i libxext6
    apt list --installed | grep -i libxft2
    apt list --installed | grep -i zlib1g


    apt list --installed | grep -i libcups2
    (*)
    sudo apt install libcups2-dev


    apt list --installed | grep -i libcupsfilters
    (*)
    sudo apt install libcupsfilters-dev


    apt list --installed | grep -i libcupsimage2
    (*)
    sudo apt install libcupsimage2-dev




    2) --------- Installation ex:fox-1.7.65

    se mettre dans le dossier
    cd $HOME/fox-1.7.65
    par exemple

    configuration :
    ./configure
    vérifiez que tout est OK normalement il n'y a aucun problème

    compilation :
    make
    installation:
    sudo make install

    tout s'installe par défaut dans :

    /usr/local/bin/

    /usr/local/lib/

    /usr/local/lib/pkgconfig/

    /usr/local/include/fox-1.7/

    /usr/local/share/doc/fox-1.7/

    /usr/local/man/man1/

    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 fox......so est situé dans /usr/local/lib/
    # mkdir /usr/local/lib fait par la commande make install de fox-toolkit

    créer un simple fichier foxtoolkit.conf comme ceci:

    sudo echo "/usr/local/lib" > foxtoolkit.conf
    Ajouter un fichier de configuration foxtoolkit.conf dans /etc/ld.so.conf.d répertoire (dans ce répertoire , vous pouvez trouver des fichiers comme par exemple)

    sudo cp foxtoolkit.conf /etc/ld.so.conf.d
    Exécuter ldconfig afin de configurer les liaisons run-time l' éditeur de liens.

    sudo ldconfig







    Puis on passe dans l'environnement Développeur/User

    copier dans .bachrc si il n'existe pas on l'ouvre

    # Chemin FOX C++
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

    export LD_RUN_PATH=$LD_RUN_PATH:/usr/local/lib
    enregistrez

    pour que cela soit pris en compte se déconnecter du user .... ou
    source $HOME/.bashrc





    exemple: makefile


    Code Makefile : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    # nom de l'executable :
    PROJET = dialog
     
     
    # Adresse des sources, des objets et des includes :
    SRCDIR = $(CURDIR)/src/
    OBJDIR = $(CURDIR)/obj/
    BINDIR = $(CURDIR)/bin/
     
    INCLUDES =\
    -I$(HOME)/fox/icons/ \
    -I$(HOME)/fox/includeprs/ \
    -I$(SRCDIR)
     
    INCLIB = 
     
     
    OBJCPP = \
        $(patsubst %.cxx,$(OBJDIR)%.o,$(notdir $(wildcard $(SRCDIR)*.cxx))) \
        $(patsubst %.cpp,$(OBJDIR)%.o,$(notdir $(wildcard $(SRCDIR)*.cpp)))
     
     
    RESULT= $(BINDIR)$(PROJET)
     
    # choix du compilateur :
    CXX = g++
     
     
    # options compilations :   -no-pie  -> executable 
     
    # -------------------------------------------------------------------
    #  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 fox17`
     
    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 fox17`  
     
     
    LDFLAGS=    `pkg-config fox17 --libs` 
     
     
    OPTIMIZE = -fexpensive-optimizations -Os -s
     
    # -------------------------------------------------------------------
    #  debug   (-no-pie)  
    # -------------------------------------------------------------------
     
    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 fox17`
     
     
     
    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 fox17`
     
     
    LDFLAGS =    -no-pie  `pkg-config fox17 --libs`  
     
     
    OPTIMIZE =
     
     
    endif
    # -------------------------------------------------------------------
    #  compilation
    # -------------------------------------------------------------------
    # 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)
    #    @echo $(OBJCPP)
     
    $(OBJDIR)%.o: $(SRCDIR)%.cxx
        $(CXX)    $(CXXFLAGS) $(INCLUDES)     -o    $@    -c    $<
     
    $(OBJDIR)%.o: $(SRCDIR)%.cpp
        $(CXX)    $(CPPFLAGS) $(INCLUDES)     -o    $@    -c    $<
     
    # pour effacer tous les objets :
    clean :
        rm -rf  $(OBJDIR)*.o
     
    # pour effacer l'executable et les objets :
    mrprope: clean 
        rm -rf $(RESULT)




    on arrive au bout

    debug / Compile :

    make PROD=false --trace clean mrprope all clean
    prod / Build:

    make PROD=true mrprope all clean


    si vous utilisez Geany copiez dans construire dans les onglets respectif

    Voilà c'est en place









    je souhaite que cela vous soit utile...

    j'ai pas mal cherché pour comprendre comment installer la dernière version valide encours de développement , sur le site ils annoncent quand on peut prendre cette version.

    j'ai mis cela aussi parce-que dans le tutoriel c++ FOX qui fonctionne pour Windows (très bien fait ps: je sais pas faire un tuto si quelqu'un voulait m'aider merci)
    Les choses ont changées et le problème des dépendances ne sont pas soulignées.


    bien-sur si vous préférez la "stable" mais elle a de l'âge c'est la fox-1.6.56.1 elle est dans vos dépôts .

  2. #2
    Membre éclairé

    Homme Profil pro
    Retraite
    Inscrit en
    octobre 2005
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : octobre 2005
    Messages : 341
    Points : 706
    Points
    706
    Billets dans le blog
    1
    Par défaut
    Pour les options de compilation
    avec GCC cela vous protégera des débordements ( enfin ne pourra en aucun cas vous laissé indifférent , ce rapporté à la doc merci )

    en GCC 8 cela fonctionne -fstack-clash-protection -fstack-protector-all pour GCC 9 les options conjointes ne fonctionnes pas utilisez -fstack-protector-all

  3. #3
    Membre éclairé

    Homme Profil pro
    Retraite
    Inscrit en
    octobre 2005
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : octobre 2005
    Messages : 341
    Points : 706
    Points
    706
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par JPLAROCHE Voir le message
    Pour les options de compilation
    avec GCC cela vous protégera des débordements ( enfin ne pourra en aucun cas vous laissé indifférent , ce rapporté à la doc merci )

    en GCC 8 cela fonctionne -fstack-clash-protection -fstack-protector-all pour GCC 9 les options conjointes ne fonctionnes pas utilisez -fstack-protector-all
    Beug résolue vous pouvez utiliser GCC 8 -> 9 ... -fstack-clash-protection -fstack-protector-all

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Interface] Installation de Fox-toolkit
    Par suso111 dans le forum C++Builder
    Réponses: 1
    Dernier message: 19/07/2010, 12h55
  2. Installer fox toolkit dans Code::Blocks
    Par argon dans le forum Code::Blocks
    Réponses: 0
    Dernier message: 13/09/2009, 19h56
  3. Installation Fox toolkit win (dev-cpp)
    Par Belegkarnil dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 08/09/2006, 17h09
  4. [Java Wireless Toolkit] Changer version compilateur
    Par PoZZyX dans le forum Java ME
    Réponses: 5
    Dernier message: 06/07/2006, 14h09
  5. [fox toolkit] problème de link
    Par Mr. Mister dans le forum C++
    Réponses: 1
    Dernier message: 13/12/2005, 16h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo