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

Langage C++ Discussion :

Utulisation de boost::chrono::process_user_cpu_clock


Sujet :

Langage C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 92
    Par défaut Utulisation de boost::chrono::process_user_cpu_clock
    Bonjour
    Pour faire un test de benchmark j'ai pensé utiliser boost::chrono::process_user_cpu_clock.
    J'ai la dernière version de boost mais apparemment cela ne suffit pas. Voici un petit programme qui ne compile plus si on décommente le block.
    Code : 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
    #include <iostream>
    #include <boost/chrono/include.hpp>
     
    using namespace std;
    using namespace boost;
    using namespace boost::chrono;
     
     
    int main()
    {
        cout << "Hello world!" << endl;
     
    #ifdef BOOST_CHRONO_HAS_CLOCK_STEADY
      cout<<"\n YES 1";
    #endif
     
    #ifdef BOOST_CHRONO_HAS_PROCESS_CLOCKS
      cout<<"\n YES 2";
    #endif
     
    #ifdef BOOST_CHRONO_HAS_THREAD_CLOCK
     cout<<"\n YES 3";
    #endif
     
    /*
    std::cout << system_clock::now() << '\n';
     
    #ifdef BOOST_CHRONO_HAS_CLOCK_STEADY
      std::cout << steady_clock::now() << '\n';
    #endif
     
    std::cout << high_resolution_clock::now() << '\n';
     
    #ifdef BOOST_CHRONO_HAS_PROCESS_CLOCKS
      std::cout << process_real_cpu_clock::now() << '\n';
      std::cout << process_user_cpu_clock::now() << '\n';
      std::cout << process_system_cpu_clock::now() << '\n';
      std::cout << process_cpu_clock::now() << '\n';
    #endif
     
    #ifdef BOOST_CHRONO_HAS_THREAD_CLOCK
      std::cout << thread_clock::now() << '\n';
    #endif
     
    */
        return 0;
    }
    J'ai droit au message d'erreur
    ... undefined reference to `boost::chrono::system_clock::now()'
    Idem pour les autres.

    Il faut sans doute faire quelque chose en plus mais quoi ? Merci d'avance pour vos réponses.

    PS : je sais qu'il y a un forum spécial pour boost mais la dernière question date du 08/07/2024 et est restée sans réponse depuis. En outre le fil [Actualité] date de ... 2012 !
    Ne m'en veuillez pas de poser ma question ici.

  2. #2
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2011
    Messages
    770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 770
    Par défaut
    Et comment compiles-tu ? Il semble manquer la lib pendant la phase de link. Au pif, libbost_chrono.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 92
    Par défaut
    En fait, d'après 'The Boost C++ Libraries' https://theboostcpplibraries.com/boost.timer
    j'ai besoin de Boost.chrono et de Boost.timer

    Ces deux librairies doivent être compilées séparément.
    Dans 'Getting Started on Windows' https://www.boost.org/doc/libs/lates...d/windows.html
    il est indiqué
    The only Boost libraries that must be built separately are:
    Boost.Chrono
    ....
    Boost.Timer
    ...
    Mon problème a donc évolué
    1) comment les télécharger
    2) comment les compiler
    3) où les placer

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 92
    Par défaut
    Merci jo_link_noir
    J'ai vu ta réponse après avoir reposté. Oui, c'est là le problème.
    J'ai été voir https://github.com/boostorg/timer/tree/boost-1.90.0
    mais je ne sais pas quoi en faire.

Discussions similaires

  1. installation de boost
    Par heinquoi dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 18/04/2005, 18h20
  2. Fichiers, dossier, chemin et lib boost ?
    Par Clad3 dans le forum Bibliothèques
    Réponses: 6
    Dernier message: 24/11/2004, 19h21
  3. Installation de boost (librairie)
    Par dj.motte dans le forum Autres éditeurs
    Réponses: 14
    Dernier message: 21/11/2004, 04h11
  4. boost::serialize
    Par Fry dans le forum Bibliothèques
    Réponses: 6
    Dernier message: 05/11/2004, 19h03
  5. cherchecomment utiliser boost sous linux
    Par Krost dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 25/02/2004, 23h03

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