Bonsoir,
Je voudrais intégrer dans un programme en C/C++, du Ruby.
Malheureusement impossible de trouver un site ou tuto capable de me dire où choper un interpréteur embarqué pour faire cela.
Merci d'avance à ceux qui pourront m'aider.
Bonsoir,
Je voudrais intégrer dans un programme en C/C++, du Ruby.
Malheureusement impossible de trouver un site ou tuto capable de me dire où choper un interpréteur embarqué pour faire cela.
Merci d'avance à ceux qui pourront m'aider.
Salut,
http://aeditor.rubyforge.org/ruby_cplusplus/index.html ?
http://www.sourcepole.com/2004/1/21/embedding-ruby-in-c ?
Et je me suis arrêté à la moitié de la première page que Google sort sur "ruby embedded interpreter c++"
Ton second lien n'aide en rien car il fournis un programme déja tous prêt.
D'une part il ne dit pas comment le compiler, ensuite j'ai déja tenté de compiler un truc basique sans rien juste avec le main et avec un #include <ruby.h> et le résultat sont des erreurs partout d'accès au fichier.
Pour ton premier lien, ça fait 15 fois qu'on m'envoie dessus et c'est pareil, il dit pas quoi installer pour faire fonctionner et il utilise même des macros inconnus( $(RUBY) n'est pas connu, résultat pas de compilation possible).
Ce que je cherche c'est un vrais tuto qui explique ce qu'il faut installer pour le faire, indique si il faut utiliser des fonctions spéciale et aide donc réellement l'utilisateur, hors tous les liens que je trouve c'est les mêmes choses, toujours un programme déjà tous fait qui est assez ardu à comprendre d'ailleurs et aucune explication su ce qu'il faut installer ou autre.
Pas grave lol, c'est vrais que j'ai du mal m'exprimer.
Là j'ai envoyé un mail au webmaster du site officiel du Ruby, histoire de voir si il connait pas une personne travaillant sur le langage et qui pourrait me donner l'information que je cherche
Je suis aussi intéréssé par cette info.
Edit: trouvé.
avec script.rb
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 #include <ruby.h> int main( int argc, char *argv[] ) { ruby_init(); ruby_script("embedded"); rb_load_file("script.rb"); ruby_exec(); }
Le tout compilé avec la commande:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 puts "Hello World!"
PS: je ne comprend pas pourquoi les headers ruby n'ont pas étét mit dans /usr/include, ou tout du moins un lien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 gcc -o example -I/usr/lib/ruby/1.8/i486-linux/ essai.c -lruby1.8
PS2: adapte à ta version de ruby.
"Never use brute force in fighting an exponential." (Andrei Alexandrescu)
Mes articles dont Conseils divers sur le C++
Une très bonne doc sur le C++ (en) Why linux is better (fr)
après de multiples tests, j'arrive à utiliser dans le script une classe définie dans le code C mais pas l'inverse, quelqu'un aurait-il une piste ?
En fait, il me faudrait juste un moyen d'accéder à la VALUE d'une classe (la même que celle renvoyée par rb_define_class) dans ce genre si :
merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part VALUE klass = rb_get_class("MaClass");
edit : j'ai réussi à le faire d'une manière détournée :
mais il y a surement mieux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 VALUE aValue = rb_eval_string("MyClass.new"); char* c = rb_obj_classname(aValue); // ceci permet d'avoir le nom de la classe en tant que "char *" VALUE kl = CLASS_OF(aValue); // ceci pour avoir une VALUE vers la classe.
Envoyez des données et des fichiers en POST avec Qt : SendForm
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager