私は非常に奇妙な問題を抱えています。1 つのソフトウェア ソースから、静的 (ar を使用) と動的 (gcc を使用) の 2 つのライブラリを構築します。テスト アプリケーションを動的ライブラリにリンクすると、問題なく動作します。しかし、静的ライブラリにリンクされたテスト アプリケーションには、「セグメンテーション違反」または「未処理の障害: アライメント例外 ... 不正な命令」が存在します。
なんで?ソフトウェア コードにバグがあることはわかっていますが、スタティック ライブラリを使用した場合、メモリ アラインメントに違いはありますか?