きっかけ
MAPPER 4 CARTRIDGEやkazzoのおかげで、ROM焼きができそうなので、NESファイルのビルド環境を作りたくなった。せっかくなので、CircleCIの手習いも兼ねてみる。仲間内で環境を共有したいし。
前提
GitHubアカウントがあればよい。リポジトリは作っておく。CircleCIはGitHubアカウントでログイン可能なので、リポジトリを連携する。
ビルド設定
test.cをコンパイル・アセンブル・リンクするだけの設定。Makefileなど使いたいところだが、それはおいおい。
.circleci/config.yml
version: 2
jobs:
build:
docker:
- image: debian:stretch
steps:
- checkout
- run: echo 'deb http://download.opensuse.org/repositories/home:/strik/Debian_9.0/ /' > /etc/apt/sources.list.d/home:strik.list
- run: apt-get update
- run: apt-get install -y ca-certificates
- run: apt-get install -y --allow-unauthenticated cc65
- run: cc65 -t nes test.c
- run: ca65 -t nes test.s
- run: ld65 -t nes test.o nes.lib atmos.lib -o test.nes
- store_artifacts:
path: ./test.nes
destination: test.nes
ハマりポイント
-
apt-get install -y ca-certificates
がないとstore_artifacts
でエラーになった -
apt-get install -y --allow-unauthenticated cc65
の--allow-unauthenticated
で証明書エラーを回避。証明書を導入する方法もあるが、手っ取り早く…