0

「hello world」aix カーネル拡張機能を作成し、それを「作成」します。私のメイクファイルは次のとおりです。

all:kernext_hello
kernext_hello:kernext_hello.c
        gcc -D_KERNEL -maix64 -c kernext_hello.c -o kernext_hello.o
        ld -b64 -o kernext_hello kernext_hello.o -e hello_init -bI:/usr/lib/kernex.exp -lsys -lcsys
clean:
        rm -f *.o kernext_hello 2> /dev/null

そしてエラー情報:

gcc -D_KERNEL -maix64 -c kernext_hello.c -o kernext_hello.o
        ld -b64 -o kernext_hello kernext_hello.o -e hello_init -bI:/usr/lib/kernex.exp -lsys -lcsys
ld: 0706-005 Cannot find or open file: kernext_hello.o
        ld: open(): A file or directory in the path name does not exist.
ld: 0706-006 Cannot find or open library file: -l sys
        ld: open(): A file or directory in the path name does not exist.
ld: 0706-006 Cannot find or open library file: -l csys
        ld: open(): A file or directory in the path name does not exist.
ld: 0706-003 Cannot find or read import file: /usr/lib/kernex.exp
        ld: accessx(): A file or directory in the path name does not exist.
make: 1254-004 The error code from the last command is 255.

したがって、私の aix 6.1 には「libsys」、「libcs​​ys」、および「/usr/lib/kernex.exp」がないのではないかと思っています。

それで、皆さん、私を助けてくれませんか?

4

1 に答える 1

1

おそらく、bos.adt.all をインストールする必要があります。kernexp.exp は bos.adt.syscalls の一部ですが、フラストレーションを軽減するためにセット全体をインストールします。

于 2013-12-31T14:07:48.510 に答える