Linux カーネルで ld オプション --fatal-warning をオンにしました。この機能をテストするために簡単なリンカー警告を生成するにはどうすればよいですか?
2 に答える
1
#include<stdio.h>
int main()
{
printf("Run !!");
static const char warning[] __attribute__((section(".gnu.warning.printf")))="My sweet linker warning";
return 0;
}
これを test.c として保存します
これを使用してビルドする場合:
gcc -Wl,--fatal-warnings test.c -o my_exe
リンカーの警告を受け取り、「my_exe」を準備しません
今試してください:
gcc -Wl,--no-fatal-warnings test.c -o my_exe
この場合、警告はそのまま報告されますが、エラーとして扱われず、「my_exe」が用意されます。
「オン」とは正確に何を意味するのかわかりませんが、上記の動作が見られる場合は、問題ないと思います。
カーネルソースで何かをしている場合は、 printf をソースに既にある関数名に置き換える必要があります( .gnu.warning セクション名も変更します)
于 2013-04-12T19:48:03.747 に答える