Ruby требует неправильной ошибки типа аргумента

Я реализую расширение ruby ​​в C ++. это скомпилировано. но когда мне требуется модуль, который я реализую в своем тесте ruby, он показывает ошибку. я создаю похожий маленький модуль и требую его таким же образом в коде ruby. это работает нормально. Я не могу понять, в чем проблема. Помогите мне, пожалуйста.
благодарю вас.

вот мой код

extconf.rb

     require 'mkmf';
have_library( 'stdc++' );
$CFLAGS << " -Wall";
create_makefile( 'Graph' );

Rgraph.cpp

     /*relevant methods here*/
extern "C" void Init_Graph(){
/* create Graph module */
Mgraph = rb_define_module("Graph");
Rgraphbase = rb_define_class_under(Mgraph,"GraphBase",rb_cObject);
rb_define_alloc_func(Rgraphbase,alloc_ldgb_ob);
/* some ruby define methods */

test.rb

     require 'rubygems'
require '/home/kelum/workspace/myextension/ext/Rlgem/graph/Graph'
include Graph
puts "some test methods";

я скомпилировал его с помощью этих команд

     ruby extconf.rb
make
ruby test.rb

но когда я выполняю ruby ​​test.rb, он показывает ошибку.

    /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': wrong argument type false (expected Class) (TypeError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from test.rb:2:in `<main>'

пожалуйста, помогите мне исправить это. Благодарю.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]