テクニカル ドキュメント #93



Doc ID: 93
製品: WinDriver
Version:  5.21 およびそれ以前

Linux マシンに WinDriver をインストールしようとして、'make install' を起動すると、以下のエラー メッセージが表示されます:
" linux_wrappers.c:405: too few arguments to
  function 'do_munmap_Rd007fc14'
  make:*** [LINUX.2.4.18-3/linux_wrappers.o]
  Error 1 "

RedHat 7.3 ディストリビューションで Linux kernel 2.4.18-4 を使用してます。どのように対処すればよいですか?

RedHat Linux 7.3 では、do_munmap() 関数に引数を追加しました。

WinDriver v5.05 またはそれ以前を使用してる場合、以下のリンクからファイルを使用できます: do_munmap_505.tgz [現在使用してるバージョンから対応するファイルの代わりに、このファイルを WinDriver/redist ディレクトリにコピーします]。

WinDriver v5.05 - 5.21 を使用してる場合、WinDriver のインストーラから makefile と linux_wrappers ファイルを使用し、以下のように、DO_MUNMAP_API_CHANGE へ 0 ではなく 1 を割り当てるように makefile を編集してください:

   # ファイルで、Change DO_MUNMAP_API_CHANGE の値を 1
     に変更します。
   # /usr/src/linux/include/linux/mm.h 以下の関数を
     定義します:
   # extern int do_munmap(struct mm_struct *,
     unsigned long, size_t, int acct);
   # instead of extern int do_munmap
      (struct mm_struct *, unsigned long, size_t);
   DO_MUNMAP_API_CHANGE=0

詳細は、WinDriver のユーザー マニュアルを参照してください。

WinDriver v5.22 以降、makefile で内部で処理されるので、修正する必要はありません。