> On 2 Oct 2021, at 6:33 pm, Ryan Schmidt <ryandes...@macports.org> wrote: > > On Sep 21, 2021, at 23:49, Ian Wadham wrote: > >> I wish to download from the Web a package called CocoaPods, however it needs >> a developers’ package of Ruby to build it. >> >> I am using MacOS Catalina 10.15.7. Apple provides Ruby in this MacOSversion, >> but will not allow it to be used for building non-Apple apps. They say they >> are phasing out the use of Ruby in MacOS and Apple Mac apps. >> >> Googling around about this problem, all the solutions I have found recommend >> getting a "ruby-dev" package from Homebrew, but MacPorts, which I use a lot, >> recommends against mixing MacPorts and Homebrew. > > Some other package managers observe a distinction between "runtime" and > "development" packages, with the latter having a "-dev" suffix. MacPorts does > not observe such a distinction. All packages in MacPorts contain both the > runtime and development parts, to the extent that each software package has > those parts.
I have since found out that all Ruby packages have facilities for developing programs or running existing programs, including MacPorts’ “ruby” and “ruby$NN” packages. The command “gem” is used to build and install Ruby programs. I have used the “ruby27” port to build and install CocoaPods successfully, I am pleased to say, which was my primary objective. > MacPorts does have port names with a "-devel" suffix, but they embody a > completely unrelated concept. Ports with names not ending with "-devel" are > typically for stable versions of software while ports with the "-devel" name > suffix are for newer unstable versions. > >> Failing that, would it be safe to install Homebrew and its ruby-dev, just >> for building CocoaPods? > > Please choose one package manager and uninstall the other. We do not want to > spend time diagnosing problems that were caused by installing software with > multiple conflicting package managers. It turns out that MacPorts Ruby packages do not work “out of the box” because the “ruby_select” port file is not doing its job (see “ruby_select is broken” thread). I used a “port select” command to complete the installation correctly. Homebrew’s Ruby was recommended on Stack Overflow and elsewhere, but it provides only the latest Ruby. Besides I have other packages I use on MacPorts and won’t be going anywhere else in a hurry. There are also several Ruby installers such as rbenv or RVM, which might have been my next port of call if I had not not gotten a MacPorts’ Ruby installed. Thanks, Ryan. Ian Wadham.