Intenté ejecutar un script Ruby en un sistema FreeBSD que no había usado por un tiempo y me salió "Ruby: Comando no encontrado". Así que pensé que no lo había instalado previamente. Fui a /usr/ports/lang/ruby22 e hice una instalación limpia. Eso me dijo que Ruby22 ya está instalado.
Entonces hice una versión del paquete -v, que me mostró que de hecho estaba instalado. Luego pensé que tal vez tenía un directorio bin que por alguna razón se había eliminado de $PATH, o algo así, así que hice una desinstalación y luego una instalación. Afirmó haberse instalado bien, pero aún aparece el error "ruby: Comando no encontrado".
Investigando más a fondo, instaló un ejecutable /usr/local/bin/ruby22, y supongo que puedo crear un enlace simbólico a él, pero... ¿algo va mal aquí? ¿Quizás haya algún paso de instalación que no haya tomado y que le permita a FreeBSD saber que realmente quiero usar esta versión particular de Ruby como el "ruby" predeterminado de la máquina?
En caso de que sea importante, esta es la VERSIÓN 10.1 amd64 y el árbol de puertos está completamente actualizado, al igual que todos los paquetes instalados.
Respuesta1
Según /usr/ports/UPDATING:20150301
, la versión predeterminada de Ruby es actualmente la 2.1. Si desea utilizar 2.2 como valor predeterminado, debe actualizar la DEFAULT_VERSIONS
perilla en /etc/make.conf
:
DEFAULT_VERSIONS+=ruby=2.2
Luego deberá reinstalar Ruby 2.2 para asegurarse de instalar los archivos binarios y scripts con los nombres esperados (es decir, sin el sufijo de versión).