Sounds like you should check $PATH before and after the change to see what it's actually doing. Whatever you want to run, say your version of ruby in /some/dir/ruby, needs to appear earlier in the path than the system version, say /usr/bin/ruby... period. It's not rocket science. However, it's not totally straightforward, either. Some updated  command locations require that the shell be rehashed after changing the path cuz the shell may cache the location - hash -r, or equivalent. That said, it's usually pilot error messing with path.

echo "PATH: $PATH"
before setting and after to see what's going on. then it's just a matter of figuring out which ruby comes first.

Will

On 3/20/23 11:33 AM, chilli.names...@gmail.com wrote:
This is the only way I can get it to work right without error

export PATH="$PATH:$HOME/bin:/opt/local/bin:/opt/local/sbin:/opt/local/share/man:/usr/X11/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"

It doesn't like :$PATH at the end


On Mar 20, 2023, at 09:27, chilli.names...@gmail.com wrote:


I am closer, but my $PATH is still messed up.

This in .bash_profile

export PATH=$HOME/bin:/opt/local/bin:/opt/local/sbin:/opt/local/share/man:/usr/X11/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH

gets me this when I source it

*env: bash: No such file or directory*
dude@mac:~/Extra/sand$ echo $PATH
/Users/dude/bin:/opt/local/bin:/opt/local/sbin:/opt/local/share/man:/usr/X11/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:

notice the trailing ":"
removing it gets me a no such directory error for "/sbin$PATH"


On Mar 20, 2023, at 09:04, Mark Anderson <e...@emer.net> wrote:


Yeah, this is the answer. You always want `/opt/local/bin/` to be near the start of your path. Only stuff that you specifically want to override MacPorts should be before it. (Examples of things you may want before: RVM or NVM or any of the version managers that put things in your home)

Thanks,
—Mark
_______________________
Mark E. Anderson <e...@emer.net>
Find me on LinkedIn <https://www.linkedin.com/in/markemer/>


On Sat, Mar 11, 2023 at 5:57 PM Austin Ziegler <halosta...@gmail.com> wrote:

    Change that to

    export
    
PATH=$HOME/bin:/opt/local/bin:/opt/local/sbin:/opt/local/share/man:/usr/X11/bin:$PATH

    -a

    On Mar 11, 2023, at 14:03, chilli.names...@gmail.com wrote:

    
    Thank you, I will check that

    I have

    export
    
PATH=$PATH:$HOME/bin:/opt/local/bin:/opt/local/sbin:/opt/local/share/man:/usr/X11/bin

    in my .bash_profile, but echo $PATH shows what you expected:

    dude@mac:~$ echo $PATH
    
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/dude/bin:/opt/local/bin:/opt/local/sbin...

    ok, I have something new to work out.

    On Mar 11, 2023, at 13:49, Austin Ziegler
    <halosta...@gmail.com> wrote:

    
    No problem. The system ruby showing up instead of
    MacPorts-installed Ruby would be *probably* because your $PATH
    has `/opt/local/bin` *after* `/usr/bin`. Typically, one wants
    to have Macports (or other third-party package systems)
    *before* /usr/local/bin and /usr/bin.

    -a

    On Sat, Mar 11, 2023 at 1:46 PM chilli.names...@gmail.com
    <chilli.names...@gmail.com> wrote:

        

        root@mac:~$ ruby -S gem install coltrane
        ERROR:  Error installing coltrane:
        activesupport requires Ruby version >= 2.7.0.

        Unfortunately, Mojave:
        ruby 2.3.7p456 (2018-03-28 revision 63024)
        [universal.x86_64-darwin18]

        So I install ruby 2.7.7

        root@mac:~$ port -vsN install ruby27
        ....
        --->  Cleaning ruby27
        --->  Removing work directory for ruby27
        --->  Updating database of binaries
        --->  Scanning binaries for linking errors
        --->  No broken files found.
        --->  No broken ports found.
        --->  Some of the ports you installed have notes:
        ruby27 has the following notes:
        To make this the default Ruby (i.e., the version run by
        the 'ruby', 'gem' or 'bundle' commands), run:
        sudo port select --set ruby ruby27
        root@mac:~$ port select --set ruby ruby27
        Selecting 'ruby27' for 'ruby' succeeded. 'ruby27' is now
        active.
        root@mac:~$ ruby -S gem install coltrane
        ERROR:  Error installing coltrane:
        activesupport requires Ruby version >= 2.7.0.

        grrr... it's still trying to use /usr/bin/ruby

        but

        root@mac:~$ /opt/local/bin/ruby -S gem install coltrane

        installed it.

        idky my ruby $PATH seems stuck on /usr/bin/ruby, but
        thanks to your tip, I was able to  install coltrane, and
        it seems to be working. Neato CLI music utility.

        Thank you, Austin!

        On Mar 11, 2023, at 13:14, Austin Ziegler
        <halosta...@gmail.com> wrote:

        
        I don’t use Macports Ruby (I use `ruby-install`), but try
        this:

        sudo ruby -S gem install coltrane

        Ruby since Ruby 2.x has included Rubygems, and since a
        bit later than that, Bundler.

        -a

        On Sat, Mar 11, 2023 at 1:06 PM chilli.names...@gmail.com
        <chilli.names...@gmail.com> wrote:

            Hi,
            I need a quick ruby primer, please.

            I'd like to install this,
            https://github.com/pedrozath/coltrane

            sudo gem install coltrane

            won't work because I'm on Mojave with an an ancient
            ruby and this requires ruby 2.7 or above.

            sudo port -vsN install ruby

            installs ruby18 by default

            sudo port -vsN install ruby27
            sudo port select --set ruby ruby27

            installs, but gem still complains.

            just guessing at this point:
            port -vsN install rb-rubygems

            reinstalls ruby18 ><


            Help, please.



-- Austin Ziegler • halosta...@gmail.com • aus...@halostatue.ca
        http://www.halostatue.ca/http://twitter.com/halostatue



-- Austin Ziegler • halosta...@gmail.com • aus...@halostatue.ca
    http://www.halostatue.ca/http://twitter.com/halostatue

Reply via email to