Libffi 라이브러리는 다양한 호출 규약에 대한 이식 가능한 고급 프로그래밍 인터페이스를 제공한다. 프로그래머가 런타임 중에 호출 인터페이스 설명에 적힌 어떤 함수든 호출할 수 있다.
GMP와 유사하게, libffi는 사용 중인 프로세서에 최적화 되어 빌드된다. 다른 시스템 용으로 빌드하는 경우 CFLAGS와 CXXFLAGS를 export해서 아키텍쳐를 위한 범용 빌드로 설정하라. 그러지 않으면 libffi에 연결된 모든 응용 프로그램에서 잘못된 작업 오류를 일으킨다.
libffi 컴파일을 준비한다:
./configure --prefix=/usr --disable-static --with-gcc-arch=native
Configure 옵션의 의미:
--with-gcc-arch=native
현재 시스템에 대해 gcc 최적화를 한다. 이것을 지정하지 않으면 대상 시스템을 추측해서 빌드되고 따라서 생성된 코드가 시스템에 대해 알맞지 않을 수가 있다. 생성된 코드를 네이티브 시스템에서 성능이 낮은 시스템으로 복사하려면, 성능이 낮은 시스템을 매개 변수로 사용하라. 대체 시스템 유형에 대한 자세한 내용은 gcc 매뉴얼의 x86 옵션들을 참고하라.
패키지를 컴파일한다:
make
결과를 테스트하려면 실행하라:
make check
test-callback.c에 관련된 6개의 테스트가 실패한다고 알려져 있다.
패키지를 설치한다:
make install