تجاوز الشيكات يم الاعتماد عند وجود إصدارات أحدث من البرنامج تعتمد

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

  •  20-08-2019
  •  | 
  •  

سؤال

وأنا باستخدام يم على سينت أو إس 5.1 - I اليد جمعت PHP 5.2.8 من المصدر، ولكن لديها مجموعات أخرى مثبتة باستخدام يم. أنا بحاجة إلى تثبيت تمديد PHP عبر PECL، ويتطلب phpize ليتم تثبيتها كذلك. ومع ذلك، القيام بما يلي ينتج خطأ التبعية:

<اقتباس فقرة>   

سودو يم تثبيت PHP-جمعة

خطأ: مفقود التبعية: فب = هناك حاجة 5.1.6-20.el5_2.1 من خلال حزمة فب-جمعة

وبما أنني في الواقع نسخة أحدث من PHP مثبتة مسبقا، كيف يمكنني اجبار يم تجاهل هذا؟ هل أنا بحاجة إلى اليد تجميع PECL / phpize من مصدر؟ أنا المسلم أبدا لديه مشكلة من قبل، إلا أنه يبدو أن يكون بسبب التحرير والسرد من بتجميع ويم تثبيت.

وأي أفكار؟

وشكرا، كايل

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

المحلول

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

إذا كنت تريد على الإطلاق أن يكون شيئا (الحديد PHP) مترجم من مصادر من جهة، واستخدام ستو / شيكينستال / ... أو أي حل آخر من شأنه أن تمكنك من القيام إدارة الحزم بدائية للحصول على المواد المترجمة المصدر.

وRegerding سؤالك، قد تتمكن من محاولة لتجاوز الاعتماد على فحص عن طريق تحميل RPM حزمة المطلوبة والقيام "دورة في الدقيقة -i --force file.rpm"، منذ ايوجد يم أي خيار للمنشآت اضطر

نصائح أخرى

في عام:

إذا كنت بناء عليه نفسك، فإنه يذهب إلى /usr/local، ويمكن الوصول إليها إلا لأمور أخرى في /usr/local.

إذا قمت بتثبيت من RPM / يم، فإنه يذهب إلى /usr، ويمكن الوصول إلى /usr و/usr/local.

وهكذا، إذا كنت ترغب في تثبيت أدوات PHP باستخدام PHP المترجمة المنزل، وتثبيتها في /usr/local أيضا: عادة، وGNU نوع البرنامج، سيكون ذلك شيئا مثل:

   ./configure --prefix=/usr/local && make && sudo make install

أو

   make prefix=/usr/local all && sudo make prefix=/usr/local install

وعلى الرغم من أن ... <م> أكثر البرامج يجب أن الافتراضية ل/usr/local إلا إذا تجاوز وضع بادئة لها.

إذا كنت تريد حزم "اليد والبناء" التي تستند على RPM، يمكنك استخدام

   yumdownloader --source WHATEVER-PACKAGE
   rpm -i WHATEVER-PACKAGE.rpm
   rpmbuild -bp ~/rpm/SPECS/WHATEVER-PACKAGE.spec

و(أي ما يعادل طريقك الى ~/rpm قد تختلف، وسوف اقول لكم rpmbuild --showrc حيث)

وهذا بتحميل حزمة .src.rpm، الذي يحتوي على المنبع المصدر (المؤلف الأصلي) (عادة ما يكون كتل القطران)، وكذلك بقع OS-محددة؛ تثبيت مصادر في ~/rpm (أو بادئة rpmbuild الخاص بك). ثم يفرغ أغراضه مصادر وينطبق بقع في ~/rpm/BUILD/WHATEVER-PACKAGE/

ومن هناك، يمكنك القيام بما تكوين / اتخاذ خطوات نفسك، مع البادئة /usr/local

وبطبيعة الحال، مجرد تثبيت من RPM هو أسهل بكثير: -)

وyum لا يعرف أي شيء عن الخاص بك المترجمة ناحية نسخة بي. يمكنك قرار الاعتماد إما تجاوز RPM عن طريق تثبيت الحزمة باستخدام rpm --nodeps وآمل أن يعمل.

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

وأو، إذا كنت محظوظا، مستودع طرف ثالث مثل EPEL أو <وأ href = "https://rpmrepo.org/RPMforge" يختلط = "نوفولو noreferrer"> RPMForge قد يكون لديه حزمة فب أحدث، لذلك لم يكن لديك لجمع الخاصة بك.

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