Building rbenv on OpenBSD 7.5
2024-06-02
I use Ruby (specifically with Jekyll) for a lot of my clubs/projects while using my personal laptop (X220 ThinkPad) which is runs OpenBSD. Since I recently upgraded to OpenBSD 7.5 I thought it could be helpful for others if I shared my process of building and using rbenv
to install different Ruby versions.
Before We Build
First, be sure to install the required packages in order to build from source, and then clone the core rbenv
repo:
pkg_add git gcc gmake libffi libyaml openssl
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
Building rbenv
Add rbenv
to your PATH and initialize it (place this inside your .bashrc
or .zshrc
etc):
export PATH="$HOME/.rbenv/bin:$PATH"
export PATH="$HOME/.rbenv/shims:$PATH"
export RUBY_CONFIGURE_OPTS="--with-openssl-dir=/usr/local"
eval "$(rbenv init -)"
Then reload your shell (zsh in this example):
source ~/.zshrc
Next we will need to install ruby-build
as a rbenv
plugin. Clone the ruby-build repository into the rbenv plugins directory:
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Installing Ruby and Setting Our Version
Now use rbenv
to install the desired version of Ruby (we will get an older version for this example):
rbenv install 3.3.0
If you run into issues, you may need to specify your openssl directory:
RUBY_CONFIGURE_OPTS="--with-openssl-dir=/usr/local" rbenv install 3.3.0
If you’re on a slower machine (like mine) this might take a little bit. Just grab a coffee or a snack while you wait!
Then navigate to your project of choice and set the local
Ruby version:
rbenv local 3.3.0
That’s it! If you’d prefer to set this version of Ruby for all projects going forward, simply replace local
with global
.