ruby0.49重新编译

ruby0.49重新编译
今天早上读ruby049代码时,感觉想修改下代码,再验证自己的理解对不对。可惜编译不了。于是把本地ruby代码打包
tar -zcvf ruby.tar ./ruby
再把文件复制出来。
进入另一个linux系统,建立文件夹,把修改过的ruby文件复制过来。
tar -zxvf ruby.tar

cd ruby
sudo ./configure
再sudo make
与原来一样,错误若干。
先是修改time.c中出现的结构体错误。
再是出现编译时gdbm,lcrypt相关错误,修改Makefile,进行相关编译选项的添加
编译出来了,但只要一执行时,就报内存相关错误,于是加
CFLAGS = -fno-stack-protector
最后,只要执行print语句,就出
./ruby -e 'print("ok")'
出现错误
Segmentation fault (core dumped)
我实在没招了。如果不加打印语句,如
 ./ruby -e '1+1'
 执行时,又不报错误,天呀,看来,要好好学C语言了。我的要求不高呀。如果print语句不能执行,那如何看到结构呢。头痛。


 

猜你喜欢

转载自blog.csdn.net/woshiyilitongdouzi/article/details/87900199