In addition, the way Ruby needs to be configured depends on the Ruby version. And even if they did work, they’re usually not the right way to fix the problem. If you look up that error on their GitHub page, you’ll see many people offering various solutions, but they don’t work for everyone. This makes sense because modifying anything would require deep knowledge of how Ruby configuration and compilation works.įor example, rvm often fails to install various Ruby versions with this error (the number after -j might change it refers to the number of cores your Mac has): Note that these version managers allow you to override some or all Ruby configuration settings, but the vast majority of people use the default settings. Whether or not you have prerequisite tools installed (many version managers don’t install them for you)Įach version manager configures Ruby differently, which is why you might be able to install a particular version with ruby-install for example, but not with rvm.How the version manager configured Ruby.The reason why some version managers can’t install certain versions of Ruby is because they all compile Ruby from scratch, and whether or not the installation succeeds depends on five main factors: The problem is that most of these version managers (when used out of the box with their default settings) fail to install Ruby 2.6.x on any Mac running on macOS Ventura (13.x), and in some cases on the latest version of Monterey (12.6.x) that has version 14 or higher of Apple’s command line tools (CLT).Īssuming you have Homebrew installed, you can check which version of the CLT you have by running brew config, and then look towards the bottom for the lines that start with CLT: and/or Xcode: The most popular ones are asdf, chruby/ruby-install, frum, rbenv/ruby-build, and rvm. These tools, known as version managers, can install multiple versions of Ruby at the same time, and let you easily switch between them. Instead, you’ll want to use a special tool that can install a separate version of Ruby that doesn’t interfere with the one that Apple installed. Read my article that goes over 5 reasons why you shouldn’t use the system Ruby on macOS. However, this version of Ruby preinstalled by Apple is not meant to be used for development. That proves that it is possible to install it on Ventura on both Intel and Apple Silicon Macs. Yet, Ventura comes preinstalled with Ruby 2.6.10 on all Macs. Some people will tell you that Ruby 2.6 is not compatible with Apple Silicon Macs. This is super important to understand, so please read my guide that explains how and why to upgrade the Ruby version in your project. The longer you wait to upgrade, the more work you’ll need to do to keep your project secure. The reason to update to at least 3.1.4 as that both Ruby 2.6 and 2.7 have reached end of life, which means they won’t be updated anymore to fix bugs and security issues. You can either try going straight from 2.6.x to 3.1.4, or in increments: update to 2.6.10, then 2.7.8, then 3.1.4. Instead, it’s recommended to update the project to at least the latest patch version (the third digit).įor example, if your project is currently using Ruby 2.6.6, or any version of 2.6 lower than 2.6.10, the first thing I recommend you do is update it to at least 3.1.4. They get stuck because they think they have to use the version of Ruby that’s specified in the project’s. This is another common source of confusion because people don’t understand how Ruby versioning works. Hey Moncef, do your solutions only work with 2.6.10? I need an older version!
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |