编译安装ruby
‘壹’ 怎么卸载用make install 编译安装的软件 · Ruby China
方法如下:进入安装该软件的原代码目录,运行make uninstall。如果不行,也可以查看一下Makefile文件,主要是看install部分,从其中找出tar格式的文件被复制到了什么路径,然后进入相应的目录进行删除即可
‘贰’ 求助,编译安装ruby报错
你要找到“ossl_pkey_ec.c”这个文件,然后编辑他,把层主的那个连接里最下面的图片的绿色背景的字体添加到相应位置就行了~
‘叁’ 怎么构建Ruby的开发环境
安装Ruby
在Windows系统下,安装Ruby最简单的办法是使用RubyInstaller。如果是为了使用Ruby on Rails,则可以下载RailsInstaller并安装。这会安装Ruby和Rails等相关工具。在这里,我选择安装了Ruby 2.3 64位。安装过程很简单,在这里就不细数了。为了方便命令行使用,建议选中将Ruby可执行文件添加到PATH的选项。
安装完成之后,打了命令提示符。输入ruby -v查看是否安装成功。
安装Ruby DevKit
有时候可能需要安装一些本地C/C++编译的Ruby插件和开发工具。这时候就需要安装Ruby DevKit。安装方法也很简单,到Ruby下载页面,找到DEVELOPMENT KIT字样,然后下载和自己Ruby版本对应的开发工具包。这应该是一个压缩包,将其解压到合适的位置即可。然后在安装目录中打开命令提示符,依次运行下面的命令即可。
安装完成之后,再次安装这些需要本地编译的插件就不会失败了。
安装IDE
Ruby语言最好用的IDE还是Jetbrains的RubyMine。下载之后安装即可。具体的配置方法我就不说了,在极客学院这里有更详细的ntelliJ IDEA使用教程 ,对phpStorm、RubyMine等Jetbrians系的其他软件也同样适用。
‘肆’ Linux中服务器软件为什么需要编译安装
服务器CPU事实已经被Intel垄断了,就那么几种型号,编来编去生成的机器码是一样的。Intel宣传自己的编译工具Intel C++ Compiler 比GCC编译出来性能要提升10%-20%,这就是一广告,生产环境很少用人用它,何况它还要收费
性能真不是问题,比如 strip 命令可以大大减小可执行文件的size,但是我装过几千遍软件,都没有见有人在安装脚本里面使用。
软件需要编译安装的真实理由有如下3点:
1.软件在编译期间需要配置,比如说nginx,需要在编译的时候指定包含哪些mole,php,apache 也是一样。
同样的是数据库,mysql 通过编译安装,因为要定制存储引擎(是否支持innodb .. ),而sqlite却绝少有人编译,都是直接下载二进制文件来用。
2.软件需要统一安装路径,每个team都会自己的安装目录约定,有些喜欢装在 /opt/下面,有些喜欢装在 /usr/local/ ,编译安装可以方便的指定这些路径(configure --prefix=xxx )
3.需要最新的版本,软件仓库的版本一般都比较低,这个理由其实不充分,生产环境倾向保守,不追求最新版本,但是对于geek来说,这可能是最重要的原因
弄明白原因之后,就很容易判断编译还是下载:
nginx/apache/php/mysql 编译安装
python/ruby/java 直接下载
‘伍’ 求助,编译安装ruby报错
make[2]:Leavingdirectory`/data/apps/sa_gitlab/temp/ruby-1.9.3-p392/ext/objspace'make[2]:Enteringdirectory`/data/apps/sa_gitlab/temp/ruby-1.9.3-p392/ext/openssl'compilingossl_pkey_ec.cossl_pkey_ec.c:在函数‘ossl_ec_group_initialize’中:ossl_pkey_ec.c:761:警告:隐式声明函数‘EC_GF2m_simple_method’ossl_pkey_ec.c:761:警告:赋值时将整数赋给指针,未作类型转换ossl_pkey_ec.c:816:错误:‘EC_GROUP_new_curve_GF2m’未声明(在此函数内第一次使用)ossl_pkey_ec.c:816:错误:(即使在一个函数内多次出现,每个未声明的标识符在其ossl_pkey_ec.c:816:错误:所在的函数内也只报告一次。)make[2]:***[ossl_pkey_ec.o]错误1make[2]:Leavingdirectory`/data/apps/sa_gitlab/temp/ruby-1.9.3-p392/ext/openssl'make[1]:***[ext/openssl/all]错误2make[1]:Leavingdirectory`/data/apps/sa_gitlab/temp/ruby-1.9.3-p392'make:***[build-ext]错误2