autotools와 cmake는 애플리케이션 사용자나 개발자를 위한 것입니까?

autotools와 cmake는 애플리케이션 사용자나 개발자를 위한 것입니까?

내가 맞다면 autotools소스 cmake코드에서 구성 파일과 makefile을 자동으로 생성하는 다른 도구입니다.

설치 과정에서 사용자로서 종종configure와 Makefile을 다운로드 받는데, 일부 사용자(VTK, ITK 등의 사용자)는 cmake또는 autoconfig및 를 사용해야 한다고 들었습니다 automake.

개발자는 사용자가 사용할 수 있는 구성 및 Makefile을 제공해야 합니까? 그렇다면: 개발자가 소프트웨어 배포 중에 이를 사용해야 cmake합니까 autoconfig?

답변1

"해야 한다"라는 문구는 개발자나 사용자가 어떻게 행동해야 하는지에 대한 일종의 규칙이 있다는 것을 의미합니다. 이것은 정말 불합리한 일입니다. :-)

소프트웨어를 배포하는 사람들은 원하는 대로 패키지를 만들 수 있습니다. 결국 그들의 시간은 곧 그들의 시간입니다. "사용자"에는 다양한 유형이 있습니다. 완전 초보자부터 숙련된 관리자까지 누구나 될 수 있습니다.

숙련된 관리자로서 저는 패키저가 시간을 내어 소프트웨어를 널리 사용되는 배포판에 통합하거나 우수한 크로스 플랫폼 설치를 구축하는 데 얼마나 감사한지 말하고 싶습니다. 일반적으로 크로스 플랫폼 설치는 Gnu 툴체인을 사용하는 tarball 형태로 제공되므로 설치하려면 "1.configure; 2.make; 3.make install"만 하면 됩니다.

내 생각에는 최고의 경험을 위해 개발자는 여기에 초점을 맞춰야 합니다. 즉, 크로스 플랫폼 Gnu 툴체인을 사용하여 구성/만들기/만들기-설치 순서를 활성화하는 타르볼을 만드는 것입니다. 개발자가 이 작업을 수행한 경우 배포판을 만드는 사람들은 배포용 패키지를 빌드하고 (중요하게) 개선을 위해 개발자에게 수정 사항을 피드백하는 매우 쉬운 방법을 갖게 됩니다. 개발자가 관리하는 tarball에서 설치하기 위한 패키징 방법.

관리자로서 저는 항상 배포에 포함된 패키지를 기본값으로 설정합니다. 이렇게 하면 나중에 배포 공급업체에서 제공하는 버그 수정 및 보안 업데이트의 혜택을 누릴 수 있습니다. 나는 최후의 수단으로만 소스 코드 타르볼을 사용합니다.

관련 정보