Skip to main content

Ruby version missing in rbenv list

On Ubuntu, you'll need to use the appropriate package manager (apt) to install dependencies and manage packages.


Here's how you can install Ruby using `rbenv` on Ubuntu:


1. **Install Dependencies**: Run the following command to install necessary dependencies for building Ruby:

    $ sudo apt update

    $ sudo apt install -y git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev


2. **Install rbenv**: If you haven't already installed `rbenv`, you can do so by cloning the rbenv repository into the `~/.rbenv` directory:

   $ git clone https://github.com/rbenv/rbenv.git ~/.rbenv


    Then add `rbenv` to your PATH by running:

    $ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc

    $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc

    $  source ~/.bashrc


3. **Install ruby-build**: Similarly, you can install the `ruby-build` plugin, which provides the `rbenv install` command:

    $ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build


4. **List Available Ruby Versions**: After setting up `rbenv` and `ruby-build`, you can list available Ruby versions:

    $ rbenv install --list


    Choose the desired Ruby version from the list and proceed with installation.


5. **Install Ruby**: Once you've chosen a Ruby version from the list, you can install it using `rbenv install`:

    $ rbenv install <ruby_version>


    Replace `<ruby_version>` with the version you want to install.


6. **Set Global Ruby Version**: After installing Ruby, you might want to set it as the global version:

    $  rbenv global <ruby_version>


    This will make the specified Ruby version the default version for your user.


Following these steps should allow you to install Ruby using `rbenv` on Ubuntu.

Comments

suggestions

Popular posts from this blog

Typecasting | How is Long to Float Conversion possible?

We will take a brief description of Typecasting and will try to do focus on Log to Float Conversion. Typecasting: Assigning a value of one data type to another. When we assign a value of smaller data type to a bigger one. it is called Widening. Java did this conversion automatically as they are compatible. As shown in the following figure: One another kind of conversion, when automatic conversion not possible i.e. when they are not compatible is Shortening. It will be just opposite of above and diagram will be reversed. How is Long to Float Conversion possible? If we look carefully at the diagram, there is one conversion which looks questionable is Long(8 bytes) to Float(4 bytes) conversion. It looks like data lossy conversion. Actually, Type conversion does two things: Either change in range or change in behavior or both. Change in Range: short a = 3456 // this value can be varied within the range of -32768 to 32767 int b = a // now this value can be varied wi...

Why "F" and "L" suffix | (10.0F, 10L)

Let us take it this way, We will create their needs. So we will get why they are needed. Try to guess, which functions will be executed in the following program: public class MyClass {     public static void main(String args[]) {         MyClass obj = new MyClass();         obj.fun1(10);     }     void fun1(byte val){         System.out.println(val);     }     void fun1(int val){         System.out.println(val);     }     void fun1(float val){         System.out.println(val);     }     void fun1(long val){         System.out.println(val);     }     } It seems like every method is capable to run this program because 10 is still literal because It has no data type. Before Java, In previous technologies, this scenario gave an ambiguity...

Precedence and Associativity of Java operators

Precedence is the order to solve the operators. For simplicity, let's see the table Operator (Higher to Lower Precedence)   Operators Precedence postfix expr ++ expr -- unary ++ expr -- expr + expr - expr ~ ! multiplicative * / % additive + - shift << >> >>> relational < > <= >= instanceof equality == != bitwise AND & bitwise exclusive OR ^ bitwise inclusive OR | logical AND && logical OR || ternary ? : assignment = += -= *= /= %= &= ^= |= <<= >>= >>>= Now, If we take an example and try to solve an expression, There can be a case of operators with the same precedence . ex. 10 * 20 / 4 % 2 When operators of equal precedence appear in the same expression, a rule must govern which is evaluated first. Now we use their Associativity. There is two kind of Associativity: Left to Right Right to Left For Unary Operators: Except the pos...