سؤال

هل يوجد دليل لتجميع تطبيق C++ من Linux إلى Windows؟

هذا فقط.أود الحصول على بعض المعلومات (روابط، مراجع، أمثلة...) لإرشادي للقيام بذلك.

أنا لا أعرف حتى إذا كان ذلك ممكنا.

هدفي هو تجميع برنامج في نظام Linux والحصول على ملف exe الذي يمكنني تشغيله على نظام Windows.

هل كانت مفيدة؟

المحلول

وأساسيات ليست صعبة جدا:

sudo apt-get install mingw32    
cat > main.c <<EOF
int main()
{
  printf("Hello, World!");
}
EOF
i586-mingw32msvc-cc main.c -o hello.exe

واستبدال apt-get مع yum، أو أيا كان يستخدم توزيعة لينكس الخاصة بك. والتي تولد hello.exe ويندوز.

وبمجرد الحصول على رأسك حول ذلك، يمكنك استخدام autotools ، ووضع CC=i586-mingw32msvc-cc

CC=i586-mingw32msvc-cc ./configure && make

CMake وملف toolchain لإدارة الإنشاء. أصعب ما زال هو إضافة المكتبات عبر الوطنية. وعادة ما يتم تخزينها في /usr/cross/i586-mingw32msvc/{include,lib} وكنت في حاجة لإضافة تلك المسارات بشكل منفصل في خطوة تكوين من عملية الإنشاء.

نصائح أخرى

يعتمد الأمر على ما تقصده (لا أستطيع أن أقول حقًا).

  1. إذا كنت تقصد أنك تريد استخدام تطبيق Linux موجود على نظام التشغيل Windows، فيمكنك محاولة تجميعه باستخدام سيجوين على ويندوز.ومع ذلك، فإن هذا لا يمنحك ملفًا قابلاً للتنفيذ لنظام Windows خاليًا من جميع التبعيات تجاه Cygwin (لا يزال الملف القابل للتنفيذ يعتمد على cygwin.dll file) - ولا يزال قد يحتاج إلى بعض النقل قبل أن يعمل.يرى http://www.cygwin.com.

  2. إذا كنت تقصد أنك تريد أن تكون قادرًا على تنفيذ التجميع الفعلي لتطبيق Windows على Linux وإنتاج ملف .exe قابل للتنفيذ على Windows - وبالتالي استخدام صندوق Linux الخاص بك للتطوير و/أو التجميع، فيجب عليك النظر في مين جيجاو لنظام التشغيل Linux وهي أداة للترجمة المتداخلة لنظام التشغيل Windows على Linux.يرى http://www.mingw.org/wiki/LinuxCrossMinGW.

أطيب التحيات!

أقترح عليك إعطاء ما يلي ، GUB (Grand Unified Builder) هي محاولة حيث تقوم بتجميع العديد من الحزم مع تبعياتها وتجميعها في حزمة تثبيت واحدة لـ 11 معمارية حاليًا.يمكنك تنزيل نسخة ISO تم إنشاؤها مسبقًا للتثبيت في VM من هنا واتبع المصدر هنا.يمكن استخدامه حاليًا للترجمة المتداخلة لـ GNU LilyPond/GNU Denemo/Inkscape وOpenOffice.org.

البنى المستهدفة هي:

  • darwin-ppc - ملف tar.bz2 لـ Darwin 7 (MacOS 10.3)/PowerPC
  • darwin-x86 - ملف tar.bz2 لـ Darwin 8 (MacOS 10.4)/x86
  • mingw - mingw قابل للتنفيذ لنظام التشغيل Windows32
  • linux-x86 - أرشيف shar لنظام التشغيل Linux/x86
  • linux-64 - أرشيف shar لنظام التشغيل Linux/x86_64
  • linux-ppc - أرشيف shar لنظام التشغيل Linux/PowerPC
  • freebsd-x86 - أرشيف shar لـ FreeBSD 4/x86
  • freebsd-64 - أرشيف shar لـ FreeBSD 6/x86_64
  • cygwin - حزم .tar.bz2 لـ Cygwin/Windows32
  • أرشيف Arm - shar لنظام التشغيل Linux/ARM (لم يتم اختباره إلى حد كبير)
  • دبيان - أرشيف shar لديبيان (لم يتم اختباره إلى حد كبير)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top