2010-06-26 5 views

답변

6

생성 된 오브젝트 코드의 비트는 gcc가 빌드 될 때 선택된 대상 아키텍처에 의해 결정됩니다. 다른 플랫폼 용으로 빌드하려면 원하는 대상 플랫폼에 맞게 cross compiler을 빌드해야합니다.

그러나 GCC는 16 비트 x86을 지원하지 않으며 32 비트 및 64 비트 x86 컴파일러가 모두 설치된 경우 예외로 -m32 또는 -m64을 사용하여 원하는 대상 형식을 선택할 수 있습니다 .

+0

각각의 32 비트 또는 64 비트 목적 코드를 얻으려면 32 비트 또는 64 비트 x86 컴파일러를 설치해야합니까? –

+1

예. '-m32' 또는'-m64'는 GCC에게 적절한 크로스 컴파일러를 호출하도록 지시합니다. 대부분의 Linux 배포판에는이 두 가지를 모두 설치할 수있는 방법이 있습니다. – bdonlan

+0

@bdonian 당신은'-m32'를 사용하기 위해서 x86_64 컴파일러 만 필요합니다. – Spudd86

1

강제로 gcc가 32 비트 코드를 생성하려면 -m32 플래그를 지정하십시오. 강제로 64 비트 코드를 생성하려면 -m64 플래그를 사용합니다. 나는 16 비트 옵션을 모른다.

관련 문제