2012-02-04 4 views
1

Linux의 Gnulib 파일은 어디에 있습니까?데비안 기반 배포판에서 특정 파일이 속한 패키지를 찾는 방법은 무엇입니까?

내 프로젝트에서 safe-read, mbchar 등의 lib를 사용하고 싶지만 내 우분투 11.10 컴퓨터에서는 찾을 수 없습니다.

[email protected]:~$ apt-file search safe-read 
gnulib: /usr/share/gnulib/lib/safe-read.c 
gnulib: /usr/share/gnulib/lib/safe-read.h 
gnulib: /usr/share/gnulib/m4/safe-read.m4 
gnulib: /usr/share/gnulib/modules/safe-read 

사용 sudo apt-get install gnulib (이 경우) 누락 된 종속성을 설치 :

+1

GNU coreutils는 유틸리티 프로그램 집합입니다 ('rm','ls','cat','diff' 등, 대략 100 개). 그것은 당신이 이야기하고있는 라이브러리 루틴과 관련이 없습니다. –

답변

4

apt-file은 당신의 친구입니다. 파일 인덱스를 초기화하려면

sudo apt-get install apt-file 
sudo apt-file update 

번으로 한 번 실행하십시오.

+1

이 답변은 정확 합니다만 gnulib은 매우 나쁜 소프트웨어이므로 사용자 자신의 코드에 복사해서는 안됩니다. 해킹과 비 휴대용 구조로 가득 할뿐만 아니라 (종종 1980 년대의 기존 레거시 시스템에 대해 동일한 휴대용이 아닌 해킹을 10 가지 버전으로 제공 할뿐 아니라 깨끗한 휴대용 버전을 작성하는 것만 큼) 또한 좋지 않습니다. 그들이 실패 할 때마다 콜링 프로그램을 중단시키는 인터페이스와 같은 디자인이 ... –

+0

@R .. : gnulib의 안정성과 디자인에 대해 감사드립니다; 그런 종류의 지식은 다른 방법으로 획득 할 수 있습니다. :) – sarnold

+1

내 말을 듣고 싶지 않은 사람을 위해'freadahead.c','freading.c' 등을 읽도록 권장합니다. 그것들은 알려진 모든 플랫폼에서'FILE' 구조체의 내부를 엿보는 코드로 가득차 있습니다. 그리고 느린 이항성을 주장하는 끝에 디폴트 케이스가 있습니다. 이것은 작동 코드를 포함하는 대신에 다음을 포함합니다 : 고독한'# error' 라인 ... 이것은 단지 마음에 떠오르는 첫 번째 예일뿐입니다. 더 많은 것이 있습니다. –