web-dev-qa-db-ja.com

syscall-template.Sとは何ですか?

私はファイルsyscall-template.Sに出くわしました、より具体的にはその場所は

.../sysdeps/unix/syscall-template.S

  1. このファイルは何ですか?
  2. それはどこにある。それは私のシステム上になく、linux-imageglibcを含むソースパッケージで見つけることができません。
8
HandyGandy

Cコードをコンパイルするときに必要なファイルです。以下に、建物のスニペットglibc-2.14.1が表示されます

私は今日新しいLFSシステムを構築していて、それが通り過ぎるのを見ました。

Cに関連しており、Cプログラムをgccで構築するためのsystem call情報を提供していると推測します。

 echo '#define SYSCALL_SYMBOL __GI_mq_setattr'; \
 echo '#include <syscall-template.S>'; \     <========### syscall-template.S
 echo 'weak_alias (__GI_mq_setattr, mq_setattr)'; \
 echo 'libc_hidden_weak (mq_setattr)'; \
) | x86_64-lfs-linux-gnu-gcc -c  -I../include -I/mnt/lfs/sources/glibc-build/rt -I/mnt/lfs/sources/glibc-build -I../sysdeps/x86_64/elf -I../nptl/sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I..

編集:

glibcソースの一部であるため、表示されません。にあります:

glibc-2.14.1/sysdeps/unix/syscall-template.S

このディレクトリは通常、インストールが完了すると削除されます。

編集2:

最初の投稿を読み直しました。確認したかったglibc sourceにないので、tarを再度抽出したところ、上記のパスにあります。

6
2bc