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/
Congratulations @ronnon78! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):
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:
Support the HiveBuzz project. Vote for our proposal!