Make 명령을 사용하기 전에 사용자는 무엇을 했거나 사용했습니까?

Make 명령을 사용하기 전에 사용자는 무엇을 했거나 사용했습니까?

저는 기본 홈 데스크탑 운영 체제로 Gentoo를 사용합니다. 2004년부터 갖고 있었어요. emerge소스 기반 운영 체제 관리를 위한 이 명령에 감사드립니다 . 가끔 다른 배포판도 확인하는데 특히 맘에 드네요Linux From Scratch - 모르시는 분들을 위해. 분명히, 나는 Gentoo를 사용하는 것이 이 점에서 나를 망쳤기 때문에 책 전체를 읽은 적이 없습니다. 나는 Gentoo가 LFS + 패키지 관리자라고 생각합니다. 나는 마침내 책을 끝내고 싶다고 결정했고, 참신함을 시뮬레이션하기 위해 가상 머신에 XUbuntu를 붙였습니다...


출시 후보를 추적 중입니다.버전 3 - CLFS용 시스템화, 그게 나한테 맞았어6장 - 임시 시스템 - 생산. 사용자가 makeMake 버전을 컴파일해야 하는 경우,인과관계의 문제, 닭이 먼저냐 달걀이 먼저냐나타나다 이것은 다음 논리적 질문으로 이어집니다.

  1. 언제스튜어트 펠드먼1976년에 만들어진 make컴퓨팅 대중의 운영 체제에 운영 체제 종속성이 포함되어 있지 않다면 어떻게 프로그램을 컴파일할 수 있습니까 make? 아래 Wikipedia 문서가 모든 운영 체제에 대해 정확하다고 가정할 수 있습니까?

  2. 1을 달성하려면 make의 모든 운영 체제 종속 버전을 포함하도록 make를 패키지해야 합니까?(아래 참조)

  3. 프로그램 A가 필요하지만 OS A에서만 컴파일되는 경우 OS B를 사용하더라도 OS A를 구입해야 합니까? (가능하다면 여기서는 Windows를 무시하세요.)

고쳐 쓰다

  1. jimmij의 의견에 따르면,OS 특정 컴파일러는 OS 특정 make와 동일한 방식으로 존재합니까?

위키피디아설명하다:

Make가 도입되기 전에 Unix 빌드 시스템은 일반적으로 운영 체제별 "make" 및 "install" 셸 스크립트와 해당 프로그램 소스 코드로 구성되었습니다. 다양한 대상에 대한 명령을 단일 파일로 결합하고 종속성 추적 및 보관 처리를 추상화할 수 있는 것은 현대 빌드 환경의 방향에서 중요한 단계입니다.

또한 제가 1976년에 태어났기 때문에 이곳에서 역사적 관점을 찾고 있다는 점도 참고해주세요.

답변1

make는 단지 편의를 위한 것입니다. 그것 없이도 소프트웨어를 구축할 수 있지만, 이는 더욱 어렵습니다.

빌드를 실행하면 make실행 중인 명령이 표시됩니다. 이러한 명령을 수동으로 실행하여 동일한 효과를 얻을 수 있습니다.

$ echo "int main() {}" > test.c
$ make test
cc     test.c   -o test

test다음
을 수행하면 동일한 결과를 얻을 수 있습니다 .

cc test.c -o test

 

make가 없으면 사용자에게 이 cc명령을 수동으로 실행하도록 지시하거나 쉘 스크립트를 배포하여 실행하도록 지시할 수 있습니다.

관련 정보