2011-05-05 1 views
0

내 리눅스 박스에 realpath에 대한 매뉴얼 페이지 말한다 :glibc와 "libc"버전을 어떻게 corelate 할 수 있습니까?

VERSIONS 
     On Linux this function appeared in libc 4.5.21. 

이제 무엇을 의미합니까? 어떤 libc를 가리키는가 - "Linux libc"? - 그리고 다른 libc의 맛과 일치하는 목록을 어디에서 찾을 수 있습니까? 그래서이 기능과 다른 것들에 링크하기위한 최소 요구 사항을 알 수 있습니까?

GLIBC는 4.5.21보다 상당히 낮은 버전 2.13에서하지만, glibc에 대한 위키 백과 페이지는 말한다 : 1990 년대 초

, 리눅스 커널 갈래의 glibc의 개발자. "리눅스의 libc"라는 그들의 포크, 년 동안 별도로 유지하고 5.

를 통해 버전 2를 출시 ... 그리고

는 libc의 리눅스의 마지막으로 사용 된 버전을 사용 내부 이름 (soname) libc.so.5. 이에 이어, 리눅스에 의 glibc 2.x에서는 사용하는 glibc는 5보다 높은 주요 버전으로 "리눅스의 libc"에 해당하는 것을 의미 불리는 이름 libc.so.6으로

합니까?

"libc"를 참조하는 다른 설명서 페이지가 있으므로 realpath은 큰 문제의 한 예일뿐입니다.

참고 : 건물 코드는 Linux에만 국한되지 않으므로 특정 기능을 사용할 수 있는지 여부를 감지하는 확실한 방법이 필요합니다.

답변

2

glibc는 버전 2.x이지만 이전 libc3/4/5의 버전 체계와의 호환성을 위해 "libc6"이라고도합니다. 어쨌든, 리눅스 시스템의 맨 페이지는 매우 유용하지만 반드시 정식적일 필요는 없습니다. glibc는 맨 페이지 대신 "info"시스템을 사용하므로 glibc 기능을 위해서는 glibc manual을 맨 페이지보다 더 잘 볼 수 있습니다. realpath 함수의 버그 범주는 역사적 맥락에서 흥미 롭지 만, libc5 시스템을 대상으로하지 않는 한 (분명히 그렇지 않다면) 특히 도움이되지 않습니다.

+0

감사합니다. 아마도 누군가 버전을 맞추기위한 소스를 알고있을 것입니다. – 0xC0000022L

관련 문제