0

我写了一个“hello world”aix 内核扩展,然后我“制作”了它。我的makefile如下:

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 回答