2017-03-09 1 views
0

Linuxドライバをビルドしようとしていますが、yasmを使用してビルドする必要がある.asmファイルを組み込みたいとします。 Makefileでどのように指定する必要がありますか? これは、Sファイルではなくasmファイルであるため、現在「No rule to target」と表示されています。 そのサフィックスを.Sに変更すると、デフォルトのアセンブラを使用してサフィックスを作成しようとしますが、構文が異なるために失敗します。 動作させるにはどうすればよいですか? Kbuildルールなどのファイルに名前yasmアセンブリファイルを使用してLinuxカーネルモジュールを構築する

<x>.o_shipped 

を持っている必要がありKBuildシステムで構築されていない

+1

yasmを使用してビルドするルールを追加しますか? – Jester

+0

私はルールを追加しました: xo:x.asm \t yasm -f elf64 $ <-o $ @ しかし、それは助けになりませんでした:make [6]:***ターゲット 'x.o ' 'yo 'が必要とする –

答えて

0

オブジェクトファイルは_shippedサフィックスなしに参照する必要があります。

<y>-m := <x>.o 

Documentation/kbuild.modules.txt(セクション「バイナリブロブを参照してください。 ")を参照してください。