13 내 패키지 중 2 개에는 본문에 defcustom양식에 정의 된 변수가 의존하는 매크로가 있습니다. Melpa에서 패키지를 설치할 때 바이트 컴파일은 다음과 같이 끝납니다. 오류 : 변수로서의 기호 값이 무효입니다 : my-defcustom-variable 그런 다음 버퍼에서 파일을 열어서 파일을 수동으로 바이트 컴파일하면 작동합니다. autoload쿠키로 시도 했지만 여전히 같은 동작을합니다. 여기서 중요한 것이 빠져 있습니다. byte-compilation elisp-macros — 실 200 억 소스 1 defcustom매크로 본문 에 따라하는 것은 이상한 일입니다. 왜냐하면 defcustom바이트 컴파일 (매크로가 확장 된) 동안에 만 의지가 적용되기 때문입니다. 이것은 나에게별로 의미가없는 것 같습니다. — lunaryorn 세바스찬 감사합니다. 당신이 옳고 많은 것을 설명합니다. — syl20bnr
15 defcustom표현은 바이트 컴파일 중에 평가되지 않으므로 매크로가 확장 될 때 defcustom 컴파일하지만 실행되지 않았기 때문에, 변수는 아직 존재하지 않습니다. defcustom을 다른 파일로 옮기거나 (파일 require시작 부분에) defcustom을 감싸서 넣을 수 있습니다 eval-and-compile. — 스테판 소스
defcustom
매크로 본문 에 따라하는 것은 이상한 일입니다. 왜냐하면defcustom
바이트 컴파일 (매크로가 확장 된) 동안에 만 의지가 적용되기 때문입니다. 이것은 나에게별로 의미가없는 것 같습니다.