短い質問

短い質問

短い質問

gcc -m32 -c file.c -o file.o -Llib -llibnameコマンドを使用して、32ビット共有ライブラリ(.soファイル)を32ビット実行可能ファイルにリンクしようとしています。しかし、ライブラリは追加されていないようです。

長い質問

32ビットカーネルを作成し、カーネル用のライブラリを作成し、私のライブラリをカーネルにリンクしたいと思います。

命令を使ってみましたgcc -m32 -nostdlib -nostdinc -fno-builtin -c kernel/kernel.c -o kernel/kernel.o -Llib -lkernel。しかし、ライブラリは追加されていないようです。

kernel/kernel.c私のカーネルCファイルとlib/libkernel.soライブラリ.soファイルです。.soコマンドを使用してファイルを作成しましたgcc -m32 -nostdlib -nostdinc -fno-builtin -fPIC -shared lib/libkernel/printf.c -o lib/libkernel.so。)

答え1

静的ライブラリ(例ar rcs libname.a lib.o:)を作成し、それをリンクする必要があります(例ld -melf_i386 -Llib -lname:)。

関連情報