Pa ABI (Applicaton Binary Interface) definiše low level interfejs kako se funkcije pozivaju, kako se argumenti šalju u te pozive, kako se rezultat vraća, kako je stek za te pozive organizovan, kako API poziva OS (npr. pogledaj sys/syscall.h), itd. Ovo je bitno ako želiš da povezuješ biblioteke pisane u dva različita jezika ili kompajlirana sa dva različita kompajlera istog jezika ili čak prenosiš object fajlove kompajlirane za isti CPU ali za dva različita OS-a (ovo zadnje je više teorija).