उबंटू में विंडोज के लिए प्रोग्राम कैसे करें?


24

वैसे भी उबंटू की IDE (जैसे अंजुता) के अंदर विंडोज़ कंसोल एप्लिकेशन (C ++ या C #) बनाने के लिए है और इसे विंडोज के लिए संकलित करते हैं?


1
mingw क्रॉस-संकलन के लिए स्पष्ट विकल्प है, लेकिन मुझे नहीं पता कि इसे अंजुता के साथ कैसे एकीकृत किया जाए। मैंने यहाँ mingw और kdevelop को एकीकृत करने के बारे में एक ट्यूटोरियल देखा: मंचों
रोबोटहुमंस

जवाबों:


21

आप क्रॉस-संकलन करना चाहते हैं, जो कि आपके लिए एक के अलावा अन्य प्लेटफार्मों के लिए कोड संकलित करने का एक तरीका है, खासकर जब प्रोसेसर पूरी तरह से अलग है। मूल रूप से आपको अपने लक्ष्य (यानी विंडोज़) के लिए सभी हेडर स्थापित करने की आवश्यकता है और फिर संकलक को यह बताएं कि यह क्रॉस-संकलन है, इसलिए यह सिस्टम की कुछ जांच नहीं करेगा और इसके बजाय गैर-मानक निर्देशिका को इंगित करेगा।

भाषा के आधार पर आपको खोज या प्रश्न विशेष रूप से करने के लिए उपयोगी हो सकता है, या यदि आप बुनियादी सी कर रहे हैं तो आप मिनगव टूल्स और उसी प्रकार के लिनक्स आधारित संकलन उपकरण का उपयोग कर सकते हैं जो gcc का उपयोग करते हैं:

sudo apt-get install gcc-mingw32

है क्यूटी / Win32 पार MinGW उपकरण का उपयोग कर संकलन के लिए एक अच्छा गाइड


12

आपको MingW पर एक नजर डालनी चाहिए । यह खिड़कियों के लिए एक जीसीसी-संगत संकलक प्रदान करता है।

एक क्रॉस-प्लेटफ़ॉर्म संस्करण है जिसका उपयोग आप लिनक्स से, विंडोज बायनेरिज़ उत्पन्न करने के लिए कर सकते हैं। आप इसे सिनैप्टिक के साथ, या चलाकर स्थापित कर सकते हैं:

sudo apt-get install gcc-mingw32

उसके आधार पर, और सामान्य 'मेक' कमांड का उपयोग करके, आप विंडोज़ के लिए प्रोग्राम बना सकते हैं।

फिर कोई भी आईडीई जो आपको मेक और जीसीसी का उपयोग करने की अनुमति देता है वह इस कंपाइलर का उपयोग कर सकता है। उदाहरण के लिए, यहाँ यह है कि कोड :: ब्लॉक आईडीई से कैसे करें


मेरे लिए काफी अच्छा है +1
रोबॉटहूमन

7

अन्य उत्तर C / C ++ कोड के लिए सही हैं; आपको एक क्रॉस-कंपाइलर प्राप्त करने की आवश्यकता होगी।

C # कोड के लिए, आप सिर्फ मोनोडेवलप का उपयोग कर सकते हैं मोनोडेवलप स्थापित करें, क्योंकि मोनो का कंपाइलर उसी प्रकार का बायटेकोड और निष्पादन योग्य प्रारूप का निर्माण करता है जैसे .NET कंपाइलर (और वीज़ा वर्सा)। जब तक आप मोनो के साथ निर्माण करते हैं, तब तक आप विंडोज मशीनों पर अनमॉडिफाइड चलेंगे, जब तक आप मानक .NET बेस क्लास लाइब्रेरी में रहते हैं या अपने ऐप के साथ उपयोग होने वाली किसी भी अतिरिक्त लाइब्रेरी को बंडल नहीं करते हैं।


5

क्यूटी निर्माता के साथ क्यूटी एक कोशिश देना चाहते हो सकता है। जीयूआई और कंसोल एप्लिकेशन के लिए महान रूपरेखा जो आप विंडोज, लिनक्स और ओएस एक्स के लिए संकलित कर सकते हैं।

http://qt.nokia.com/


2

विंडोज़ एप्लिकेशन लिनक्स (ubuntu) को प्रोग्राम करने का सबसे आम तरीका मिंगव टूल्स का उपयोग करना है:

http://www.mingw.org/

Mingw स्थापित करने के लिए तैयार करने के लिए ubuntu पैकेज हैं।


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 के साथ करना है, स्रोत को विंडोज़ कोड 1252 में परिवर्तित करें :<ESC>:e ++enc=cp1252

एक और उपाय, अधिक शक्तिशाली UTF-8 का उपयोग करना है, लेकिन इसके लिए तारों को संभालने के तरीके को बदलने की आवश्यकता होती है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.