ABI (アプリケーションバイナリインターフェース) - CI/CD用語集の定義
ABI は、コンパイル済みコンポーネントが相互運用できるようにするバイナリレベルの契約 (呼び出し規約、データレイアウト、name mangling) です。
ABI はコンパイル済みバイナリ間の低レベルの契約です。関数が引数をどう渡し、データをどう配置し、名前をどう mangle するかを定めます。2 つのバイナリが正しくリンクしたり互いを呼び出したりするには、同じ ABI を共有する必要があります。
ABI はコンパイル済みバイナリ間の低レベルの契約です。関数が引数をどう渡し、データをどう配置し、名前をどう mangle するかを定めます。2 つのバイナリが正しくリンクしたり互いを呼び出したりするには、同じ ABI を共有する必要があります。
CI において
ABI の不一致 (たとえば、あなたのコードとは異なるコンパイラバージョンや標準ライブラリ設定でコンパイルされたライブラリ) は、ローカルでは通るが別の構成の runner で失敗するクラッシュやリンクエラーを引き起こします。ABI を一貫させるために toolchain とベースイメージのバージョンを固定してください。
関連ガイド
Name Mangling - CI/CD Glossary DefinitionName Mangling: Name mangling is how a compiler encodes function signatures (namespaces, argument types) into…
Shared Library - CI/CD Glossary DefinitionShared Library: A shared library (.so on Linux, .dll on Windows, .dylib on macOS) is a compiled library loade…
Linker Error - CI/CD Glossary DefinitionLinker Error: A linker error is any failure during the link stage of a build, such as an unresolved symbol, a…