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

GTK+ avec C & C++ Discussion :

meson :ERROR: All keyword arguments must be after positional arguments


Sujet :

GTK+ avec C & C++

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 147
    Points : 88
    Points
    88
    Par défaut meson :ERROR: All keyword arguments must be after positional arguments
    bonjour à tous

    je traine une erreur dont je ne trouve pas l'origine dans la documentation de meson
    mon meson.build est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    project('psquare_test', 'c')
    cc = meson.get_compiler('c')
    m_dep = cc.find_library('m', required : false)
    gtkdep = dependency('gtk+-3.0')
    scr= ['test-psquare.c','psquare.c', 'psquare.h']
    executable('test-psquare', scr, dependencies : gtkdep,m_dep)
    et voici le retour sur la commande ninja

    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
    [0/1] Regenerating build files.
    The Meson build system
    Version: 0.49.0
    Source dir: /home/francis/Documents/programme_example/chapitre_500_customwidget/psquare
    Build dir: /home/francis/Documents/programme_example/chapitre_500_customwidget/psquare/buildir
    Build type: native build
    Project name: psquare_test
    Project version: undefined
    Native C compiler: cc (gcc 7.2.0 "cc (Ubuntu 7.2.0-8ubuntu3.2) 7.2.0")
    Build machine cpu family: x86_64
    Build machine cpu: x86_64
    Library m found: YES
    Dependency gtk+-3.0 found: YES (cached)
     
    meson.build:6:0: ERROR:  All keyword arguments must be after positional arguments.
     
     
    FAILED: build.ninja 
    ........

    j'ai réglé un certain nombre de problème dont le moyen de préparer le lien avec la bibliothèque math ....
    pouvez -vous aider sur cette histoire d'ordre des arguments . A quel endroit j'ai une erreur ?

  2. #2
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Bonjour,

    Le message d'erreur t'indique que le problème est sur la ligne 6:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    meson.build:6:0: ERROR:  All keyword arguments must be after positional arguments.
    La ligne en question:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    executable('test-psquare', scr, dependencies : gtkdep,m_dep)
    Le message indique que "tous les arguments par mots clés doivent être situés après les arguments positionnels".
    Le principe de passer des arguments par mots clés c'est de pouvoir les passer dans le désordre, ou d'omettre certains arguments.
    Chaque argument est séparé des autres par une virgule. Ici, si on regarde comment tu passes tes arguments:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    test-psquare -> positionnel
    scr -> positionnel
    dependencies : gtkdep -> mot clé
    m_dep -> positionnel
    On voit donc qu'il y a un argument positionnel après un argument par mot clé, ce qui n'est pas autorisé. Mais la vraie cause est que tu n'as pas regroupé tes dépendances en un unique objet à passer en argument.
    Il te suffit donc de regrouper tes dépendances comme tu l'as fait avec tes fichiers source: en faisant une liste.
    Remplace la ligne suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    executable('test-psquare', scr, dependencies : gtkdep,m_dep)
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    executable('test-psquare', scr, dependencies : [gtkdep, m_dep])
    ou bien, plus facile à modifier pour ajouter des dépendances, et plus lisible quand tu fais des diffs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    deps = [gtkdep, m_dep]
    executable('test-psquare', scr, dependencies : deps)
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 147
    Points : 88
    Points
    88
    Par défaut résolu
    sa fonctionne merci

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

Discussions similaires

  1. Error: (car) bad argument type
    Par Neuromancien2 dans le forum Scheme
    Réponses: 1
    Dernier message: 12/06/2011, 11h35
  2. clear all et arguments
    Par dword2add dans le forum MATLAB
    Réponses: 6
    Dernier message: 18/03/2010, 16h12
  3. Réponses: 1
    Dernier message: 08/12/2007, 08h20
  4. Réponses: 4
    Dernier message: 06/12/2007, 22h28
  5. Réponses: 17
    Dernier message: 28/07/2005, 08h20

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