Ustawienie wielu wersji PHP w macOS Monterey, brakujący manager pakietów dla macOS

in #polish3 years ago


Dziś zacznę cykl małych poradników dotyczących przygotowania środowiska programistycznego opartego o komputer z systemem operacyjnym macOS. Planując zmiany w swoim życiu i powrót do programowania postanowiłem przesiąść się ponownie na tą platformę. Plusy i minusy tego opiszę Wam w innym poście. Dziś troszkę "od środka" rozpoczniemy od instalacji wielu wersji PHP na naszym komputerze.

macOS ma domyślnie zainstalowane PHP w wersji 8.x często niestety jest konieczność posiadania wielu wersji gdyż kod na którym pracujemy może być nie kompatybilny z najnowszą odsłoną PHP.

Od czego zaczynamy. Pierwsza i kluczowa rzecz to określenie w jaki procesor jest wyposażony nasz komputer. Instalacja na procesory Intela jest ciut inna jak na procesor Apple M1.

Ja mam procesor M1. Dlatego ten poradnik będzie dostosowany do tego procesora.

Instalujemy XCode Command Line Tools

xcode-select --install

Instalujemy manager pakietów HomeBrew

Kolejnym krokiem jest instalacja managera pakietów HomeBrew - jest to podobny manager jak apt w systemie Ubuntu / Debian. Pozwala on rozszerzyć możliwości naszego komputera o niedostępne w bazowym systemie możliwości. Jak na przykład dodatkowe wolne oprogramowanie. Link do strony dotyczącej tego projektu jest tutaj: https://brew.sh/

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Teraz kluczowy moment. Ta instalacja spowoduje zainstalowanie bazowych pakietów, jednak używanie tego managera na procesorze M1 jest problematyczne. Musimy dostosować instalację pod nasz procesor - dla procesora Inter nie musimy nic robić.

Dodajemy do pliku .zshrc na końcu linijkę:

alias ibrew="arch -x86_64 /usr/local/bin/brew

i restartujemy terminal. Od teraz uzywamy zamiast polecenie brew - ibrew.

MacBook-Air-Aleksander➜  ~  ᐅ  ibrew -v
Homebrew 3.4.8
Homebrew/homebrew-core (git revision c8e031fcd13; last commit 2022-04-26)
Homebrew/homebrew-cask (git revision e8fa320c38; last commit 2022-04-26)

Instalujemy PHP

Aby zainstalować dodatkowe wersje PHP używamy dodatkowych repozytoriów dla homebrew. Mamy możliwość wykorzystać dwa (wybieramy jedno):

ibrew tap exolnet/homebrew-deprecated
ibrew tap shivammathur/php

ja używam tego:

ibrew tap shivammathur/php

Po zainstalowaniu repozytorium mamy możliwość zainstalowania wybranych (lub wszystkich wersji PHP, tymi poleceniami (pamiętajmy o poleceniu dla Intela):

ibrew install shivammathur/php/[email protected]
ibrew install shivammathur/php/[email protected]
ibrew install shivammathur/php/[email protected]
ibrew install shivammathur/php/[email protected]
ibrew install shivammathur/php/[email protected]
ibrew install shivammathur/php/[email protected]

Konfiguracje dla poszczególnych wersji PHP mamy tutaj:

/opt/homebrew/etc/php/7.0/php.ini
/opt/homebrew/etc/php/7.1/php.ini
/opt/homebrew/etc/php/7.2/php.ini
/opt/homebrew/etc/php/7.3/php.ini
/opt/homebrew/etc/php/7.4/php.ini
/opt/homebrew/etc/php/8.0/php.ini

Pozostaje tylko teraz przełączyć się na wybraną wersję PHP:

Switch from 8.1 to 7.4
brew unlink php@8.1
brew link php@7.4 --force
MacBook-Air-Aleksander➜  ~  ᐅ  php -v
PHP 7.4.29 (cli) (built: Apr 14 2022 14:12:33) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.29, Copyright (c), by Zend Technologies

No i działa :) - udanego programowania.

Podsumowanie

Jak na wstępie napisałem opiszę w przyszłych postach kilka tematów. Pierwsze i najważniejsze to przesiadka z Windowsa na macOS. Dlaczego to zrobiłem, czy warto. Drugi z tematów to jakie mam plany projektowe i co będziemy tutaj razem robić.

Zapraszam :) do komentowania.



Posted from my blog with Exxp : https://blog.mycave.pl/ustawienie-wielu-wersji-php-w-macos-monterey-brakujacy-manager-pakietow-dla-macos/
Sort:  

Congratulations @ronnon78! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):

You received more than 100 HP as payout for your posts, comments and curation.
Your next payout target is 250 HP.
The unit is Hive Power equivalent because post and comment rewards can be split into HP and HBD

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out the last post from @hivebuzz:

Hive Power Up Month - Feedback from April day 21
Support the HiveBuzz project. Vote for our proposal!