dockerを使わないlogue SDKのビルド環境

この週末は広島G7サミットのニュースを見ながら、個人的には通常運転で今日もdrumlogueをいじっていました。

これを一昨日から作っているわけですが、途中でdrumlogueのdocker経由のビルドが面倒になって、ローカル環境でのビルドに移行しました。
この記事はそのメモです。

logue SDKの開発環境は、2.0からdocker版が提供されるようになりました。
環境構築は簡単になりましたが、やっぱりビルドだけdocker経由でやるのって、ワンテンポ遅くなる感じがします。
なのでツールチェインをローカル環境にインストールすることにしました。

もともとlogue SDKでは、ツール類をダウンロードするためのシェルスクリプトがtools/gcc/に用意されていました。
このときのgccは、スクリプトの中身を見ると分かりますが2016年版というちょっと古いものになっていました。

docker版は、Dockerfileを見るとベースはUbuntu 20.04で、ツールチェインは

apt install gcc-arm-none-eabi

でインストールしています。
私が使っているのも同じUbuntu 20.04なので、これでいけるのかなーと試してみましたが、drumlogueに関しては最後にリンクするところでエラーになってしまいます。
(ちなみにプラグインのファイルである拡張子.drmlgunitのファイルは、実際には.so形式のファイルです。)

上述のDockerfileを調べてみると、drumlogueだけはaptでインストールされるものとは別のツールチェインをダウンロードしていました

そこで、このツールチェインを手動でダウンロードし、適当なディレクトリに展開します。
そしてdrumlogue用プロジェクトのMakefileから呼び出せるように、展開したディレクトリのパスを環境変数CROSS_COMPILEに設定します。
私の場合はツールをdrumlogue/tools/の下に展開したので、以下のように設定しました。

export CROSS_COMPILE=../tools/drumlogue-toolchain-amd64/arm-unknown-linux-gnueabihf/bin/arm-unknown-linux-gnueabihf-

これでローカルで一瞬でビルドができるようになりました。ちなみにgccのバージョンを見てみると6.5.0で、2018年のものでした。drumlogueの開発当初に整備したツールチェインなのかもしれませんね。

コメント

This website stores cookies on your computer. These cookies are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to to opt-out of any future tracking, a cookie will be setup in your browser to remember this choice for one year.

Accept or Deny

タイトルとURLをコピーしました