우분투에서 Windows를 프로그래밍하는 방법?


24

어쨌든 Ubuntu의 IDE (예 : Anjuta) 내에 (C ++ 또는 C #) Windows 콘솔 응용 프로그램을 만들고 Windows 용으로 컴파일해야합니까?


1
mingw는 크로스 컴파일을위한 확실한 선택이지만 Anjunta와 통합하는 방법을 모릅니다. mingw와 kdevelop 통합에 대한 자습서를 여기에서 보았습니다. forums.gentoo.org/viewtopic-t-292180.html 어쩌면 mingw를 추천하는 사람들 중 하나가 Anjunta 자습서와의 통합에 대해 알고 있습니까?
RobotHumans

답변:


21

크로스 컴파일을 수행하려고합니다. 이는 특히 프로세서가 완전히 다른 경우 사용하지 않는 플랫폼의 코드를 컴파일하는 방법입니다. 기본적으로 대상 (예 : 창)에 대한 모든 헤더를 설치 한 다음 컴파일러에게 크로스 컴파일 중이라고 알려주므로 시스템 검사를 수행하지 않고 비표준 디렉토리를 가리킬 것입니다.

언어에 따라 검색이나 질문을 구체적으로 수행하는 것이 유용하거나 기본 c를 수행하는 경우 MinGW 도구와 gcc를 사용하는 동일한 종류의 Linux 기반 컴파일 도구를 사용할 수 있습니다.

sudo apt-get install gcc-mingw32

는 MinGW 도구를 사용하여 QT / Win32에서 크로스 컴파일을위한 좋은 가이드 .


12

MingW를 살펴 봐야 합니다. Windows 용 gcc 호환 컴파일러를 제공합니다.

Windows 바이너리를 생성하기 위해 Linux에서 사용할 수있는 크로스 플랫폼 버전이 있습니다. 시냅틱으로 또는 다음을 실행하여 설치할 수 있습니다.

sudo apt-get install gcc-mingw32

이를 바탕으로 일반적인 'make'명령을 사용하여 Windows 용 프로그램을 만들 수 있습니다.

그런 다음 make 및 gcc를 사용할 수있는 모든 IDE에서이 컴파일러를 사용할 수 있습니다. 예를 들어, Code :: Blocks IDE에서이를 수행하는 방법이 있습니다 .


나를 위해 충분히 +1
RobotHumans

7

다른 답변은 C / C ++ 코드에 맞습니다. 크로스 컴파일러가 필요합니다.

C # 코드의 경우 Mono의 컴파일러는 .NET 컴파일러와 동일한 유형의 바이트 코드 및 실행 가능 형식을 생성하므로 그 반대로도 Monodevelop를 사용할 수 있습니다 Monodevelop 설치. Mono로 빌드 한 앱은 표준 .NET Base Class Libraries 내에 있거나 앱과 함께 사용하는 추가 라이브러리를 번들로 제공하는 한 Windows 컴퓨터에서 수정되지 않은 상태로 실행됩니다.


5

Qt Creator와 함께 Qt를 사용 해보고 싶을 수도 있습니다. GUI 및 콘솔 응용 프로그램을위한 훌륭한 프레임 워크 Windows, Linux 및 OS X 용으로 컴파일 할 수 있습니다.

http://qt.nokia.com/


2

Windows 응용 프로그램 Linux (ubuntu)를 프로그래밍하는 가장 일반적인 방법은 mingw 도구를 사용하는 것입니다.

http://www.mingw.org/

mingw를 설치할 준비가 된 우분투 패키지가 있습니다.


2

에서 이 페이지 :

sudo apt-get install wine mingw32 mingw32-binutils mingw32-runtime

이것이 기본적인 크로스 컴파일에 필요한 전부입니다. 해보자:

#include <windows.h>

int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
{
  MessageBox(NULL,
    "Cette fenêtre prouve que le cross-compilateur est fonctionnel !",
    "Hello World", MB_OK);
  return 0;
}

이것을 사용하여 이것을 컴파일하십시오 :

i586-mingw32msvc-g++ -o essai.exe essai.cpp

실행하려면 mingw 라이브러리가 필요합니다 : mingwm10.dll :

gunzip -c /usr/share/doc/mingw32-runtime/mingwm10.dll.gz > mingwm10.dll

그런 다음 시작할 수 있습니다.

wine essai.exe

대화 상자의 텍스트는 프랑스어로 강조 표시되어 있으며 gvim을 사용하여 소스를 Windows 코드 페이지 1252 로 변환 하십시오 .<ESC>:e ++enc=cp1252

더 강력한 또 다른 솔루션은 UTF-8을 사용하는 것이지만 문자열 처리 방식을 변경해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.