버전 차이로 인해 대상 시스템을 사용하는 대신 내 프로그램과 함께 공유 라이브러리를 제공하려고합니다.다른 libc 파일에 연결하는 방법은 무엇입니까?
ldd
내 프로그램이 이러한 공유 libs와 사용 말한다 :
linux-gate.so.1 => (0xf7ef0000)**(made by kernel)**
libc.so.6 => /lib32/libc.so.6 (0xf7d88000)**(libc-2.7.so)**
/lib/ld-linux.so.2 (0xf7ef1000)**(ld-2.7.so)**
가 나는 성공적으로 컴파일하여 ld-xxx.so 연결 한 :
gcc -std=c99 -D_POSIX_C_SOURCE=200112L -O2 -m32 -s -Wl,-dynamic-linker,ld-2.7.so myprogram.c
하지만 성공적인 링크 libc-xxx.so
에 관리하지 않았습니다. 어떻게해야합니까?
입니다. 이런 식으로 아무도 우연히 libc 버전을 잃어 버릴 것이고 만약 그들이 당신의 프로그램을 제거한다면 당신의 libc는 오래 가지 않을 것입니다. – nategoose
같지만 정적으로 다음과 같습니다. http://stackoverflow.com/questions/10763394/how-to-build-a-c-program-using-a-custom-version-of-glibc –