Go (v1.5부터)에는 크로스 컴파일 옵션이 내장되어있어 매우 흥미 롭습니다. 그러나 다른 OS 및 아키텍처에 대해 어떻게 컴파일 할 수 있습니까? 목표 컴퓨터 언어 및 플랫폼을 알고 있어야하며 (아마도 이와 비슷한 방식으로 행동해야합니다.컴파일러는 어떻게 다른 OS 및 아키텍처로 크로스 컴파일 할 수 있습니까?
3
A
답변
4
이 말은 대상 기계 언어 및 플랫폼을 알고 있어야하며 (아마도 그렇게 행동 할 수도 있음) 말입니다.
예, 이동 컴파일러는 대상 운영 체제가 작동하는 방법을 알고있다, 그러나 이 컴파일 된 실행 바이너리를 실행되지 않습니다 이동 컴파일러 로, 대상 OS와 같은 행동 할 필요가 없습니다, 그것은 단지 그것을 생산해야합니다.
모든 Go 도구는 서로 다른 운영 체제, OS 및 아키텍처 세부 정보 (예 : 명령어 세트, 워드 크기, 엔디안, 정렬, 사용 가능한 레지스터 등, more info on this)의 바이너리 형식이어야합니다. 이 지식은 Go 도구에 내장되어 있습니다.
[추가 정보] (https://www.youtube.com/watch?v=KINIAgRpkDA) –
답변 해 주셔서 감사합니다. 링크에 대한 정보는 꽤 많이 설명됩니다! –