如何检查 ruby-2.6.3 是否正在使用 jemalloc ?我将 ruby-2.6.3 安装为 $ rvm install 2.6.3 -C --with-jemalloc

How to check ruby-2.6.3 is using jemalloc ? I installed ruby-2.6.3 as $ rvm install 2.6.3 -C --with-jemalloc

这个命令应该显示 -ljemalloc 但它不是。我可以用 ruby-2.4.3 和 ruby-2.5.x 看到它,但不能用 ruby-2.6.x

$ ruby -r rbconfig -e "puts RbConfig::CONFIG['LIBS']"
-lm                                                                                                                                    
$ cat /etc/environment


PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.1

我正在使用 ubuntu 18 LTS 和其他 ruby 版本,我正在获取上面提到的 jemalloc 文件库

在ruby2.6.x中,你必须检查MAINLIBS,像这样:

$ irb -rrbconfig
irb(main):004:0> RbConfig::CONFIG['MAINLIBS']
=> "-lz -lpthread -lrt -lrt -ljemalloc -lgmp -ldl -lcrypt -lm "

或者,当然,用你的一行:

$ ruby -r rbconfig -e "puts RbConfig::CONFIG['MAINLIBS']"
-lz -lpthread -lrt -lrt -ljemalloc -lgmp -ldl -lcrypt -lm