Emacs lisp 소스 코드
.elc
파일?예를 들어
cal-mayan.elc
디렉토리에 있는 파일
/bin
?예를 들어
cat
,split
, 및echo
답변1
이는 사용 중인 배포판에 따라 다소 다릅니다. 데비안 스타일 시스템에서는 다음과 같이 할 수 있습니다:
$ dpkg -S `which cat`
coreutils: /bin/cat
$ apt-get source coreutils
마지막 명령은 cat 명령이 포함된 바이너리 패키지를 빌드하는 데 사용되는 소스 아카이브와 모든 패치를 가져옵니다.
아니면 그냥 구글링하셔도 됩니다. 아니면 Google 코드 검색을 사용해 보세요.
답변2
그러나 Emacs의 경우 Ubuntu 아래에 emacs23-el이라는 특수 패키지가 있습니다. 이 패키지에는 Emacs용 모든 el 파일이 포함되어 있으며 elc 파일과 함께 설치됩니다. 이것의 장점은 Emacs에서 직접 함수와 변수 정의를 볼 수 있다는 것입니다. string-insert-사각형 함수가 어떻게 정의되어 있는지 보고 싶다고 가정해 보세요. Ch f string-insert-사각형을 클릭하면 문서가 포함된 도움말 버퍼가 나타나서 해당 항목이 ret.el에 정의되어 있음을 알려줍니다. ret.el을 클릭하면 Emacs는 자동으로 함수 정의를 표시합니다.
답변3
RPM 기반 배포판의 경우 "rpm -qi <somepackage>" 또는 원래 패키지를 모르는 경우 "rpm -qi <somefile>"을 요청할 수 있습니다. 소스 RPM이 무엇인지, 소스의 홈 페이지가 무엇인지 알려줍니다. Fedora(및 yum을 사용하는 기타 배포판)에서는 yumdownloader를 사용하여 소스 패키지를 얻을 수 있습니다. 예를 들어 "yumdownloader --source <패키지>"를 사용하면 소스 패키지를 얻을 수 있습니다. 그런 다음 rpm(1) 명령을 사용하면 소스 코드의 압축을 풀 수 있습니다(소스 RPM 패키지에는 업스트림 소스 코드, 다양한 패치, 구성 파일 및 결과 빌드 및 설치를 안내하는 사양 파일이 포함되어 있음).
로컬 수정을 통해 패키지를 설치해야 하는 경우(아마도 다음 업스트림 버전을 확인하기 위해) 유용할 수 있습니다.