顯示具有 macports 標籤的文章。 顯示所有文章
顯示具有 macports 標籤的文章。 顯示所有文章

2026年5月14日 星期四

[macOS] 解決 MacPorts 2.12.5 更新卡住問題 @ macOS 26.5

晚上做 sudo port selfupdate 時,發現跑不完的異常現象,主要卡在:

Synchronizing local ports tree from rsync://rsync.macports.org/macports/release/tarballs/ports.tar.gz

用 rsync -avP rsync://rsync.macports.org/macports/release/tarballs/ports.tar.gz /tmp/mp-rsync-test/ 測試觀看下載資料情況,的確異常的慢,就想到調一下 mirror site 了,請 AI 代勞,發現他給的 mirror site 品質不好,還是自己去翻一下官網 https://trac.macports.org/wiki/Mirrors ,挑個日本或韓國來用用,就可以解決問題

```
$ sudo vim /opt/local/etc/macports/sources.conf
...
# default
#rsync://rsync.macports.org/macports/release/tarballs/ports.tar.gz [default]

# use JP
rsync://kmq.jp.rsync.macports.org/macports/release/tarballs/ports.tar [default]

$ sudo port -d sync
$ sudo port -v selfupdate
```

2017年5月18日 星期四

[macOS] 透過 MacPorts 安裝 MySQL Client

每次裝完都很感到疑惑,為何當下沒 mysql 指令可以用,然後又跑去 linux server 把玩 :p 其實是自己沒做設定罷了:

$ sudo port install mysql56
$ mysql
-bash: mysql: command not found
$ sudo port select mysql mysql56
$ mysql --version
mysql  Ver 14.14 Distrib 5.6.34, for osx10.11 (x86_64) using  EditLine wrapper


收工

2017年5月8日 星期一

[PHP] 把玩 Laravel @ macOS 10.11.6

最近使用 Vue.js 後,想說練一下怎樣跟 php 整合,就挑 Laravel 來試試了。這次全靠 MacPorts 跟 Composer 來把玩,碰到了一些問題筆記一下。

$ sudo port install wget tmux php71 php71-openssl php71-mcrypt php71-mbstring
$ sudo port select php php71
$ cd ~
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
$ php composer-setup.php
$ php -r "unlink('composer-setup.php');"


建立專案:

$ time php ~/composer.phar create-project --prefer-dist laravel/laravel my-project

運行:

$ php artisan serve
Laravel development server started: <http://127.0.0.1:8000>


收工。

若有碰到奇怪的問題,通常是 php 版本問題:

Parse error: parse error, expecting `'&'' or `"variable (T_VARIABLE)"' in /Users/id/my-project/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php on line 478
Script php artisan optimize handling the post-update-cmd event returned with error code 255


這是因為一開始偷懶不改變 php 環境變數,例如只用 alias php=php71 或是都用 php71 ~/composer.phar create-project --prefer-dist laravel/laravel my-project 這種執行方式所產生出來的,最後還是靠設定 PATH 或是 port select php php71 來解。

2016年8月22日 星期一

[Mac] MacPorts: no destroot found @ Mac OSX 10.11.6

前陣子一直在測試相容性問題,不斷地用 sudo port -fp uninstall installed 清光軟體。但一直懶沒把所有相依性刪光,在安裝 py-pip27 時,就會蹦出以下錯誤訊息:

$ sudo port install py27-pip
--->  Computing dependencies for py27-pip
--->  Installing py27-pip @8.1.2_0
Error: org.macports.install for port py27-pip returned: no destroot found at: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_python_py-pip/py27-pip/work/destroot
Please see the log file for port py27-pip for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_python_py-pip/py27-pip/main.log
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port py27-pip failed


解法就是老老實實參考 MacPorts - 2.4. Uninstall 官方文件清資料,仔細做了以下動作:

$ sudo rm -rf /opt/local/ ~/.macports

下載並安裝最新版 MacPorts: https://distfiles.macports.org/MacPorts/MacPorts-2.3.4-10.11-ElCapitan.pkg

重新安裝需要的軟體:

$ sudo port selfupdate
$ sudo port install py27-pip