2
私は明示的にlibgccとリンクしていないいくつかのプロジェクトで、いくつか欠けているものがあります。コンパイル中に特定のビルトイン関数をブラックリストに登録することはできますか?
たとえば、-Os
の最適化を指定すると、__gnu_thumb1_case_uqi
などの関数の参照が不定になることがあります。
コンパイル時にgccがこれらの機能を実行しないようにするにはどうすればよいですか?
私は明示的にlibgccとリンクしていないいくつかのプロジェクトで、いくつか欠けているものがあります。コンパイル中に特定のビルトイン関数をブラックリストに登録することはできますか?
たとえば、-Os
の最適化を指定すると、__gnu_thumb1_case_uqi
などの関数の参照が不定になることがあります。
コンパイル時にgccがこれらの機能を実行しないようにするにはどうすればよいですか?
あなたは試すことができます:
はしかし、GCCの組み込み関数の呼び出しに展開するマクロを持つあなた-fno-builtin -fno-builtin-function
が接頭辞として「
__builtin_
」で始まらない組み込み関数を認識しないでください。-ansi
または-std
厳密なISO C準拠のオプションがISO標準の意味を持たないために使用される場合、組み込み関数ではない関数を含む、影響を受ける関数の詳細については、GCCが提供するその他の組み込み関数を参照してください。
#include
ヘッダファイルは、あなただけを停止することができればもののヘッダを含めないこともできます。標準ライブラリとリンクしていない場合、おそらく標準ヘッダファイルからインクルードしたくないかもしれません。
私はlibgccへの呼び出しの排出を完全に避けることは不可能だと信じています。 –