
私はプロジェクト用のスナップ パッケージを作成しています。コンパイルのみを行いたいライブラリがあります。つまり、/configure && make のみで、/configure && make && make install は行いません。
Ubuntu snap でドキュメントを検索したところ、次のものを見つけました:https://snapcraft.io/docs/reference/plugins/autotools
しかし、make install 部分をスキップする方法は見つかりませんでした。誰かその方法を提案してくれませんか? 汚いやり方としては、make install の後にシェル スクリプトを 1 つ追加して、make install で生成されたファイルを再帰的に削除し、アプリケーション コードのコンパイルに進むという方法があります。しかし、これをうまく行うためのハッピー パスがあるはずです。したがって、snapcraft を実行して snap パッケージをビルドするときに、この make install をスキップする方法があれば教えてください。
答え1
インストール段階で行われる処理をinstall:
、空白のままにしておくことで上書きすることができます。つまり、空白行をエコーするだけで、スキップしていることを示すことができます。あるいは、Makefileにいいえインストールスタンザを使用すると、必要な操作をすべてインストールスタンザで実行できます。例:
parts:
foo:
source: .
plugin: autotools
install: |
cp -a somebinary $SNAPCRAFT_PART_INSTALL/bin
cp -a somesupportfiles $SNAPCRAFT_PART_INSTALL/foo
これは、シェルcp
コマンドを使用してインストールを実行します。