Linux 서브시스템을 탑재한 GCC를 탑재한 Windows용 실행 파일을 컴파일 하는 방법
Windows 10 Anniversary Update에는 Ubuntu용 Linux 서브시스템이 포함되어 있습니다.gcc를 설치했습니다.sudo apt-get install gcc
.
테스트를 위해 간단한 C 코드를 작성했습니다.
#include <stdio.h>
int main(void){
printf("Hello\n");
return 0;
}
그리고 그것을 정리했다.gcc -c main.c
그러나 실행(Linux만 해당)main.o
생성됩니다.내가 실행하면./main.o
, 이 표시됩니다.Hello
.
제 질문은 어떻게 컴파일 할 수 있느냐는 것입니다.main.c
Windows에서 실행할 수 있도록?기본적으로는 어떻게 하면*.exe
Linux 서브시스템에서 GCC를 사용하는 파일
Linux 서브시스템은 Linux-컴퓨터로서 기능합니다.Linux 실행 파일만 실행할 수 있으며 기본gcc
는 Linux 실행 파일을 만듭니다.
Windows 실행 파일을 작성하려면 mingw 크로스 컴파일러를 설치해야 합니다.
sudo apt-get install mingw-w64
그런 다음 다음 32비트 Windows 실행 파일을 만들 수 있습니다.
i686-w64-mingw32-gcc -o main32.exe main.c
64비트 Windows 실행 파일:
x86_64-w64-mingw32-gcc -o main64.exe main.c
이러한 Windows 실행 파일은 Linux 서브시스템 내부에서는 동작하지 않고 외부에서만 동작합니다.
Linux에서 gcc를 사용하여 컴파일하면 PE(what window가 인식하는) 파일이 아닌 ELF 파일이 생성됩니다.
Linux에서 Windows용 프로그램을 컴파일하려면 mingw를 사용합니다.
언급URL : https://stackoverflow.com/questions/38786014/how-to-compile-executable-for-windows-with-gcc-with-linux-subsystem
'programing' 카테고리의 다른 글
JavaScript를 사용하여 HTML 형식의 요소에 포커스를 설정하려면 어떻게 해야 합니까? (0) | 2022.09.22 |
---|---|
메이븐의 종속성 jar 파일 목록 (0) | 2022.09.22 |
Apache Commons는 왜 '२३?' 숫자를 고려합니까? (0) | 2022.09.22 |
CDI와 EJB는 어떻게 비교됩니까?인터랙티브? (0) | 2022.09.22 |
매개 변수 형식 PHP 7에서 암시-개체의 배열입니다. (0) | 2022.09.22 |