문제

Debian Linux 시스템에서 libcurl을 사용하는 코드를 컴파일하고 있습니다. 내 Dev Machine은 Debian 5를 실행하고 있지만 이전 Debian 4 시스템에서도 이진을 사용할 수 있기를 원합니다.

내가 지정하면 -lcurl libcurl.so.4에 연결되지만 Debian 4 시스템은 libcurl.so.3 만 있습니다.

GCC에 libcurl.so.3 (데비안 4 및 5에 존재 함) 또는 libcurl.3에 연결하도록 지시 할 수있는 방법이 있습니까?

도움이 되었습니까?

해결책

링커 명령 줄에서 -l 대신 실제 .so 파일을 전달할 수 있으며 원하는 것을 수행해야합니다.

다른 팁

"-lcurl"use "-l : libcurl.so.3"을 사용하는 대신 "-l _installed_path_"도 사용합니다.

.3으로 연결되는 프로젝트에 Symlink 로컬을 만드는 것은 어떻습니까? 그래도 이름 충돌이 될지 확실하지 않지만 항상 libcurl old.

그렇게하는 올바른 방법은 --filter 그리고 --auxiliary 링커의 플래그.

그것들은 매우 문서화되어 있지 않지만 설치 한 컴퓨터에 따라 동일한 라이브러리의 다른 버전에서 기호를로드 할 수 있어야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top