Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Example of boost/python/call_method.hpp does not compile

Ouverte
#326 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
1/5
Temps estimé
Moins d'une heure
Accessibilité débutants
45/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
cpp
Domaine
backend

Piste de recherche

Commencez par l’exemple my_module.cpp et reproduisez la commande gcc signalée en utilisant le chemin d’inclusion de Python 3.6. Vérifiez les headers de l’exemple par rapport aux déclarations call_method et def manquantes signalées ; c’est terminé lorsque l’exemple inclut les headers Boost.Python requis et se compile sans ces erreurs.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

I compilled the my_module.cpp file with the following command:
gcc -o my_module.o my_module.cpp -c -Wall -fPIC -I/usr/include/python3.6

This resulted in the following error:

my_module.cpp: In member function ‘virtual const char* Base_callback::class_name() const’:
my_module.cpp:31:44: error: ‘call_method’ was not declared in this scope
    char const* class_name() const { return call_method<char const*>(m_self, "class_name"); }
                                            ^~~~~~~~~~~
my_module.cpp:31:56: error: expected primary-expression before ‘char’
    char const* class_name() const { return call_method<char const*>(m_self, "class_name"); }
                                                        ^~~~
my_module.cpp:31:56: error: expected ‘;’ before ‘char’
my_module.cpp:31:67: error: expected unqualified-id before ‘>’ token
    char const* class_name() const { return call_method<char const*>(m_self, "class_name"); }
                                                                   ^
my_module.cpp:31:67: error: expected initializer before ‘>’ token
my_module.cpp: In function ‘void init_module_tryout()’:
my_module.cpp:40:5: error: ‘def’ was not declared in this scope
     def("is_base", is_base);
     ^~~
makefile:16: recipe for target 'my_module.o' failed

The solution was to add the following 2 include statements:

#include <boost/python/call_method.hpp>
#include <boost/python/def.hpp>
Langage dominant
C++
Étoiles
537
Forks
223
Merge moyen
11 h 22 min
PR mergées (30 j)
2

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de boostorg/python

Toutes les issues de boostorg/python

Issues similaires

Plus d'issues C++

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.