كيفية بناء الأصلية Mac OS X المثبت (على غير منصة ماك)?

StackOverflow https://stackoverflow.com/questions/283480

  •  08-07-2019
  •  | 
  •  

سؤال

كيف يمكن بناء مواطن نظام التشغيل Mac OS X المثبت بلدي التطبيق على منصة ماك?

على سبيل المثال لدي جهاز كمبيوتر ويندوز و تطبيق جافا.أريد جهاز كمبيوتر ويندوز لبناء المثبت (ربما داخل .dmg أرشيف) التي تعمل مع أبل المثبت.

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

المحلول

ومن الممكن الآن لخلق الأصلي ماك OS X المثبت على منصة غير ماك. لويس Gerbarg، وصعبة بعض الشيء هو ملف BOM (مشروع قانون من المواد). ومع ذلك نسخة مفتوحة المصدر من mkbom (استنادا إلى رمز osxbom جوزيف Coffland) متاح الآن على العنوان التالي:

http://hogliux.github.io/bomutils

والموقع يحتوي أيضا وسيلة سهلة لمتابعة خطوة بخطوة تعليمي على خلق المثبت ماك OS X على لينكس (<لأ href = "http://hogliux.github.io/bomutils/tutorial.html" يختلط = "نوفولو"> http://hogliux.github.io/bomutils/tutorial.html ).

وشركتي بناء بانتظام التركيب ماك OS X على لينكس مع هذا الأسلوب، وحتى الآن لم يكن لدينا أي مشاكل كبيرة.

نصائح أخرى

كما أن آخرين قد أشار بالفعل, كنت حقا أخذ من الصعب حل هذه المشكلة وسوف يتمكن المستخدمون من لعنة اسمك لذلك ، ما لم يكن لديك حقا سبب وجيه للقيام بذلك.صحيح أن أنواع معينة من التطبيقات تتطلب التركيب for Mac OSX.هذه عامة تشمل:

  • التطبيقات التي تثبيت برامج تشغيل مخصص (أي نواة امتداد)
  • التطبيقات التي تحتاج إلى تثبيت أطر أو الموارد الأخرى التي لسبب ما لا يمكن تعبئتها في إطار تطبيق حزمة
  • التطبيقات التي تحتاج إلى تشغيل نظام الخدمة وبالتالي يجب تشغيل بعض بعد تثبيت البرامج النصية إلى إطلاق التطبيق أثناء تمهيد
  • سيئة مكتوبة البرامج التي تتطلب اتخاذ بعض النوع من التغييرات على نظام المستخدم (أي تعيين الأذونات على مجلد أو شيء) ، و المطور مقيدة اليدين قبل قسم التسويق ونيس لتوزيع التطبيق الأكثر إيلاما طريقة ممكنة

موافق, حتى النقطة الأخيرة قليلا الساخرة ، ولكن هل فهمت ما أعنيه هنا ؟ :) أساسا ، إذا كنت تكتب طبيعية المستخدم التطبيق ، يجب توزيعه بالطريقة العادية أن مستخدمي ماك تتوقع ، وهو DMG ملف يحتوي التطبيق الخاص بك حزمة.أو إذا كنت تريد حقا أن تكون نزوة ، عصا مستعار إلى "تطبيقات" مجلد داخل DMG لمساعدة المستخدم قم بسحب البرنامج هناك.إلا إذا كنت أكتب شيئا مما يجب تثبيت نفسها في النظام, بدلا من مجرد يتم تشغيلها من قبل النظام لا يوجد سبب لاستخدام المثبت هنا.كما نضع في اعتبارنا أن هذا هو OSX الذي يحتوي بالفعل على العمل بكفاءة Java JRE, لذلك كنت لا داعي للقلق حول التعبئة والتغليف JRE في المثبت أو أي شيء مثل ذلك.

الآن بعد أن كنت قد تم بشكل صحيح وبخ على هذا السؤال سوف تجيب عليه مع افتراض أن البرنامج يندرج في واحدة من الفئات المذكورة أعلاه.حقا سيكون أفضل رهان الذهاب مع حل تجاري مثل ملزمة المثبت (التي أستطيع أن أقول بثقة أن الغالبية العظمى من مستخدمي ماك سوف نكص في الارهاب عند تركيب منتج مع هذه الأداة) ، والذي يسمح لك أن تفعل بالضبط ما كنت أبحث عنه هنا في الأساس لجعل عبر منصة المثبت الذي يبني على مختلف منصات كنت ترغب في دعم واحد من الملف المثبت.

مرة أخرى, على الرغم من أفضل رهان هنا هو أن تفعل ما من مستخدمي هذه المنصة هي الأكثر راحة مع (والذي هو السبب في كل الردود على سؤالك نحثكم على عدم جعل المثبت).وهذا يعني, ومع ذلك ، إذا كنت حقا يجب أن تجعل المثبت, يجب عليك استخدام غير-عبر منصة الإطار ؛ مستخدمي ويندوز سوف يشعر أكثر في المنزل عندما قدم مع معيار MSI و مستخدمي ماك سوف يشعر أكثر في المنزل مع تفاحة المثبت pkg.على PackageMaker البرنامج المعروف محدودة ، على الرغم من ذلك إذا كان يجب عليك استخدام فيض بدلا من ذلك.وهذا يعني أكثر قليلا صيانة لك منذ كنت سوف تحتاج إلى تميل بعد اثنين (أو أكثر) التركيب منفصلة ، ولكن إذا كان البرنامج الخاص بك هو حقا المعقدة على هذا الطلب ، يجب أن تكون على استعداد لتقديم التضحية من أجل راحة المستخدمين.

ومن الصعب إنشاء شركة دي ام جي على ويندوز، لكنها بالتأكيد من الممكن إنشاء بنية الملف .app التي يمكنك الرمز البريدي بعد ذلك، كما علق آخرون ذكرتها. هناك أوقات عندما سوف .pkg العادية لن تنخفض وكنت ترغب في توفير الحوارات والشيكات قبل التثبيت، وما إلى ذلك يمكنك أن تفعل ذلك مع <لأ href = "http://bitrock.com" يختلط = "نوفولو noreferrer" > BitRock التركيب installbuilder ، يمكنك بناء التركيب لماك، لينكس، ويندوز، وسولاريس من كل من منصات أخرى.

وهكذا، بضعة أسئلة سريعة.

أولا، لماذا لا تريد المثبت؟ معظم مستخدمي ماك يفضلون التطبيقات التي هي مجرد اسحب المثبتة. إذا كنت لا أكتب ماك OS X رمز معين فمن الصعب تخيل أنك في حاجة لوضع البتات في أماكن خاصة، مثل دعم التطبيقات أو LaunchDaemons. على افتراض كل ما لديك يذهب فقط في مجلد واحد لماذا يكلف نفسه عناء مع المثبت على الإطلاق؟

وثانيا، لماذا سيكون من مشكلة لبناء المثبت ماك على ماك؟ بالتأكيد لديك ماكنتوش حول لاختبار التطبيق (كنت أليس كذلك الشحن فقط عمياء لنظام التشغيل Mac دون اختباره على ماك، أليس كذلك؟).

حسنا، وقد قلت ذلك، على افتراض انك لا تزال لديها سبب وجيه لبناء هذا الواقع على جهاز كمبيوتر، وهناك بعض البتات التي لن تكون سهلة. في الأساس .pkg حفنة من مخطوطات النص، تعريب، ملف أرشيف (Archive.pax.gz)، ومشروع قانون المواد (Archive.bom).

وعلى افتراض لا تغييرات كبيرة بين يبني، يمكنك جعل المثبت على جهاز ماكنتوش، وبعد ذلك فقط إعادة بناء بوم وpax.gz، استبدالها في .pkg القائمة، ودفعة بضع قطع من البيانات الوصفية. يجب أن يكون باكس السهل بما فيه الكفاية للتعامل مع (باكس هو تنسيق أرشيف قياسي)، ولكن قد يكون الملف بوم اصعب قليلا، لأنني لا أعتقد أن يتم توثيق ذلك علنا، وأشك في أدوات لخلق لهم (mkbom) هي جزء من داروين (وليس مفتوحة المصدر). لذلك كنت بحاجة الى الذهاب الى هذا الرقم والكتابة أداة مخصصة لإنشاء ملف بوم.

وبعبارة أخرى، فإن هذا من المرجح أن يكون كمية كبيرة من العمل.

والطريقة المعتادة لتثبيت التطبيق على جهاز ماكنتوش هو سحب التطبيق إلى مجلد التطبيق. تأتي معظم برامج باعتباره DMG الذي يحتوي على التطبيق وارتباط رمزي إلى مجلد التطبيق. لماذا تريد ذلك بأي طريقة أخرى؟ تحتاج إلى التفكير ماك لبناء تطبيقات ماك عظيم! الشكل والمظهر مهم جدا، خصوصا لمستخدمي ماك.

وتحقق من هذا الرمز لقراءة ملفات BOM: https://cauldrondevelopment.com/svn/osxbom/trunk

ووضع كل شيء في ملف JAR واحد، إضافة إلى ZIP. القيام به.

ولكن على محمل الجد، كنت ترغب في توزيع التطبيق الخاص بك لمستخدمي ماكنتوش دون اختبار لأول مرة؟ أي كوكب أنت على!؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top