ruby 是否有一个rvm env变量用于配置标志?

pxy2qtax  于 2023-08-04  发布在  Ruby
关注(0)|答案(2)|浏览(92)

而不是:

rvm install 2.6.6 -C --with-jemalloc

字符串
我能以某种方式设置一个环境变量,这样我就可以安装Ruby没有传递配置标志?那就是:

rvm install 2.6.6


似乎有这个$rvm_configure_flags var all throughout the rvm codebase,所以我尝试在我的环境中设置它:

$ echo $rvm_configure_flags
--with-jemalloc


然而,这似乎没有被使用,或者它的重击不知何故。我在整个rvm代码库中使用了echo $rvm_configure_flags,似乎找不到它被攻击的地方。
一个相当老的(?)示例.rvmrc文件似乎表明这是可能的:
https://github.com/rvm/rvm/blob/master/examples/rvmrc#L90-L92

nc1teljy

nc1teljy1#

命令rvm help install显示以下内容:

#### .rvmrc equivalents

- `--with-arch`                       `rvm_architectures`
- `-C`                                `rvm_configure_flags`
        ... or per-ruby:              `{jruby|ree|rbx|mruby|macruby|truffleruby}_configure_flags`
- `-E`                                `rvm_configure_env`
- `-M`                                `rvm_make_flags`
- [none]                              `rvm_curl_flags`; default: --max-redirs 10 --max-time 1800

字符串
这意味着-C等价于rvm_configure_flags。文档中有以下附加示例:

A variable with multiple flags should be set using parentheses and space 
separators. E.g. .rvmrc for `brew`-based `readline`, `llvm`, and 
`openssl` libraries:

warning: don't use \ linebreaks or it will break.

rvm_configure_env=( LDFLAGS="-L$(brew --prefix readline)/lib -L$(brew --prefix llvm)/lib -L$(brew --prefix openssl)/lib" CPPFLAGS="-I$(brew --prefix readline)/include -I$(brew --prefix llvm)/include -I$(brew --prefix openssl)/include" CXX=$(brew --prefix llvm)/bin/clang++ CC=$(brew --prefix llvm)/bin/clang )
rvm_archflags="-arch x86_64"


我还确认了在~/.rvmrc中设置rvm_configure_flags的预期效果是将这些选项传递给./configure步骤。

myzjeezk

myzjeezk2#

RVM documentation有一个关于编译标志的部分:
如果需要为编译过程传递编译标志,只需设置相应的环境变量。
举个例子,在ruby 2.1.1中启用gdb:

$ export optflags="-O0 -ggdb"
$ rvm install 2.1.1

字符串

相关问题