1

rexec を Redhat Enterprise Release 4 にインストールしようとしています。make コマンドを使用しようとするたびに、次のエラーが発生します。

Makefile:15: *** セパレータがありません。止まる。

私はネット上の他の場所を見てきましたが、Makefile の 15 行目は以下のとおりです。

.include (理由はわかりませんが、この Web サイトでは .include の後に続くものが空白になっています。これは <> で囲まれた bsd.kmod.mk です)

vi を使用して、真ん中のスペースが 8 つのスペースではなく TAB であることを確認しましたが、これでは問題は解決しません。.include の前に TAB を配置しました。どこかで最初にタブが必要であると読んだため、別のエラーが発生しました。

make: *** 'load' が必要とするターゲット 'rexec.ko' を作成するルールがありません。止まる。

rexec をインストールするために他に何をすればよいかわかりません。手がかりはありますか?

メイクファイル全体:

SRCS = rexec.c vnode_if.h KMOD = rexec KO = ${KMOD}.ko KLDMOD = t

KLDLOAD = /sbin/kldload KLDUNLOAD = /sbin/kldunload

ロード: ${KO} ${KLDLOAD} -v ./${KO}

アンロード: ${KO} ${KLDUNLOAD} -v -n ${KO}

.include (理由はわかりませんが、この Web サイトでは .include の後に続くものが空白になっています。これは <> で囲まれた bsd.kmod.mk です)

4

1 に答える 1

0

.include はスペースを使用する必要があると思います。Makefile の最後の部分を確認してください。次のように終了する必要があります。

unload: ${KO}
<tab>${KLDUNLOAD} -v -n ${KO}

.include <bsd.kmod.mk>

<tab> は実際のタブ文字です。そして、その空白行は空白にする方がよいでしょう。トリッキーな空白はありません。

于 2009-07-08T22:00:42.990 に答える