Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何在Ubuntu上从源代码编译irb?_Ruby_Ubuntu_Compilation_Irb - Fatal编程技术网

Ruby 如何在Ubuntu上从源代码编译irb?

Ruby 如何在Ubuntu上从源代码编译irb?,ruby,ubuntu,compilation,irb,Ruby,Ubuntu,Compilation,Irb,我希望在没有任何优化的情况下从源代码编译irb,这样我可以在使用gdb单步执行(解释器)代码时获得更多信息。我已经成功地编译了ruby 1.9.1,没有任何问题,但是我找不到任何关于irb的文档。我相信irb包含在ruby 1.9源代码中,但还不能验证这一点。有人能给我指出正确的方向吗?你能澄清一下“没有优化就编译IRb”的确切含义吗 您不会说您正在使用哪个Ruby实现。我假设您正在使用YARV YARV没有单独的编译步骤,每次运行IRb时,它都会自动为您编译IRb。(即使YARV是一个编译器,

我希望在没有任何优化的情况下从源代码编译irb,这样我可以在使用gdb单步执行(解释器)代码时获得更多信息。我已经成功地编译了ruby 1.9.1,没有任何问题,但是我找不到任何关于irb的文档。我相信irb包含在ruby 1.9源代码中,但还不能验证这一点。有人能给我指出正确的方向吗?

你能澄清一下“没有优化就编译IRb”的确切含义吗

您不会说您正在使用哪个Ruby实现。我假设您正在使用YARV

YARV没有单独的编译步骤,每次运行IRb时,它都会自动为您编译IRb。(即使YARV是一个编译器,您也可以将其视为一个解释器,因为您永远不必担心编译步骤。)此外,YARV在编译AFAIK时不会执行任何优化,如果执行,则无法影响编译,因此也无法关闭优化

IRb在YARV源代码中很容易找到。可执行文件位于
bin
目录中:

但它没有做任何有趣的工作。真正的肉在标准库中:

  • 整个目录