FreeBSD 오류의 소스에서 m4 빌드: ../../build-aux/snippet/c++defs.h를 만드는 방법을 모릅니다.

FreeBSD 오류의 소스에서 m4 빌드: ../../build-aux/snippet/c++defs.h를 만드는 방법을 모릅니다.

저는 FreeBSD 13.0-CURRENT를 사용하고 있습니다(자세한 내용은여기), 나는 사용하고 싶습니다GNU m4. 다운로드됨이 버전구성하고 만들어 보세요. 그러나 제목에 명시된 오류가 발생합니다: error: don't know how to make ../../build-aux/snippet/c++defs.h. 전체 로그에 대해,이봐. 어떤 아이디어가 있나요? 모든 제안과 답변에 감사드립니다.

EDIT1: 실제로 내 m4 버전은 1.4.17입니다.

답변1

여기에 m4-1.4.17의 압축을 풀었습니다(Fedora 31; 귀하의 latest버전은 다를 수 있지만...2013 버전인 것 같습니다). 문제의 파일은 거기(에 build-aux/snippet) 있습니다. "included"라는 스크립트 가 있지만 bootstrap아마도 이것은 버전 제어에서 직접 들어오는 소스에만 필요할 것입니다.

전통 ./configure; make춤은 잘 됐지만, 콘텐츠를 잔뜩 모아놓고 실패했다.

freadahead.c: In function 'freadahead':
freadahead.c:91:3: error: #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."

간단히 "GNU m4 FreeBSD"를 검색하면 찾을 수 있습니다.신선한 항구, FreeBSDm4 수동-gGNU m4 호환성을 활성화하는 옵션 에 대해 이야기하십시오 . 왜 이것만으로는 충분하지 않습니까? 아마도 FreshPorts가 제공하는 모든 패치 버전이 더 나은 출발점이 될 것입니다(문명화되어 원본 소스 코드와 개별 ​​패치를 제공하는 경우 패치를 다른 버전으로 포팅하는 것은 혼란스러운 문제를 직접 디버깅하는 것보다 작업이 적습니다).

관련 정보