0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Intel Mac 2015 で キャラクタライズツール Libretto を動かす

0
Last updated at Posted at 2026-02-12

はじめに

前回、古い Intel Mac に Re:VIEW 環境を構築してみました。
正直なところ、「さすがにもう厳しいのでは」と思いながらやってみましたが、実際に動かしてみると、まだ十分に原稿作成に使えることが分かりました。

それなら次は――。

次の技術同人誌として書いてみたいと考えている
オープンソースのキャラクタライズツール Libretto も、この古い Mac で動かせないだろうか。

たぶん、LibrettoはPDKごとに入れるのではなく、一つの環境で各種PDKに対応できそうなので、Re:VIEWのように一つの環境(一つのマシン)でどこまでできるのか試してみたい。
それに、技術同人活動では、「環境を自分で組み立てて理解する」こと自体が一つの楽しみでもあります。

とはいえ、今回の環境は:

  • Intel Mac 2015年物
  • macOS 12(Monterey)
  • すでにサポートが薄くなりつつある世代

という条件です。

実際に試してみると、

  • Homebrew が macOS 12 を Tier3 扱いしている
  • gcc のビルドで止まる
  • Python の pip install がブロックされる

といった、いくつかの壁にぶつかりました。

それでも構成を工夫することで、最終的には

  • .lib の生成
  • PDF データシートの出力

まで問題なく動作するところまで到達できました。

この記事では、

Intel Mac(macOS 12)で Libretto を動かすまでの手順

を整理してまとめます。

まず Homebrew と MacPorts

macOS で開発ツールを入れる際に使うのが
パッケージ管理システムです。

🍺 Homebrew
🍏 MacPorts

Homebrew は最も普及しているツールですが、
macOS 12 は現在 **Tier3(非サポート扱い)**となっています。

そのため今回は、古い macOS でも比較的安定して動く MacPorts を使用しました。

実際に、

This build failure was expected.
This is a Tier 3 configuration.

というエラーが表示されました。

そのため今回は、

安定性を優先して MacPorts を使用

しました。


環境


1. ngspice インストール

Xcode CLI Tools

xcode-select --install

MacPorts インストール

公式サイトから macOS 12 用パッケージをインストール。
https://www.macports.org

ngspice インストール

sudo port selfupdate
sudo port install ngspice

確認:

which ngspice
ngspice -v

通常:

/opt/local/bin/ngspice

2. pandoc インストール(PDF出力用)

sudo port install pandoc

3. Libretto 取得

git clone https://github.com/snishizawa/libretto.git
cd libretto

4. Python 仮想環境作成

macOS + Homebrew Python では
システム領域への pip install が制限されることがあります。

そのため venv を使用します。

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install numpy matplotlib scipy pandas

確認

python -c "import numpy; print(numpy.__version__)"

5. Makefile 修正(重要)

毎回 source .venv/bin/activate しなくても済むように、
Makefile で venv の Python を直接指定します。

Makefile の先頭に追加:

PYTHON := .venv/bin/python3

そしてすべての python3 を以下に変更:

$(PYTHON)

例:

time $(PYTHON) script/libretto.py -b $(CMD_FILE)

6. prep.lib の前に必ず実行(work自動作成)

Makefileにコメントで残っている行を有効にします。

- #$(LIB):prep $(MODEL)
- $(LIB): $(MODEL)
+ $(LIB): prep $(MODEL)
+ #$(LIB): $(MODEL) 

これで make だけで work/ が確実に作られます。


7. 実行

Makefile は、冒頭で対象プロセスを切り替えるスタイルです。

PROCESS_NAME := OSU350
#PROCESS_NAME := SKY130
CONDITION    := TCCOM
make

成功例:

-- dotlib file generation completed!!
--  2 cells generated!!

生成物:

OSU350_5P0V_25C.lib
OSU350_5P0V_25C.pdf

結論

Intel Mac + macOS 12 環境でも、

  • MacPorts
  • ngspice
  • pandoc
  • Python venv
  • Makefile 修正

を組み合わせることで、Libretto は問題なく動作します。

古い Mac でも十分戦えます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?