pecl ইনস্টল মঙ্গো - ভুল মডিউল এপিআই সঙ্গে সংকলন রাখে


9

এখানে উবুন্টু 12.04 এর সাথে কাজ করা, এনগিনেক্স এবং পিএইচপি 5-এফপিএম

আমি মঙ্গো পিএইচপি 5.3 এ ভাল কাজ করেছিলাম, তারপরে আমি অনড্রেজ / পিএইচপি 5 পিপিএ যুক্ত করেছি এবং পিএইচপি 5.4 এ আপডেট করেছি। এটি জিডি এবং সিআরএল এক্সটেনশানগুলি রেখেছিল, তবে মঙ্গো নয়। আমি php.ini ফাইলটিতে লাইনটি আবার যুক্ত করেছি, এবং কিছুই না। তারপরে আমি স্টার্টআপ ত্রুটিগুলি সক্ষম করেছিলাম এবং এটি পেয়েছি:

PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/mongo.so' - /usr/lib/php5/20100525/mongo.so: cannot open shared object file: No such file or directory

সুতরাং, বুনো অনুমান, আমি find -name 'mongo.so'2009-0626 / থেকে 20100525 / ... এ ফাইলটি সরিয়েছি এবং যার ফলে এই ত্রুটি হয়েছে:

PHP Startup: mongo: Unable to initialize module
Module compiled with module API=20090626
PHP    compiled with module API=20100525
These options need to match

আমি তখন করেছি pecl uninstall mongoএবং pecl install mongo- যা নতুন মঙ্গো.সো ফাইলটি ঠিক ২০০৯২২6 / এ তৈরি করেছে -

আমি এই সমস্ত কিন্ডা তাই আশা করি এটি ঠিক করা অন্ধ সহজ ভুল! আমার কেবল মঙ্গো ফিরে আসার দরকার আছে।

উত্তর:


12

আমার অনুমান হয় হবে:

  • pecl install mongoআসলে একটি প্রাক-বিল্ট বাইনারি ইনস্টল করা হচ্ছে (যা সত্যই বোবা হবে তবে অবাক হওয়ার মতো হবে না); অথবা
  • আপনি এখনও php5-devআপনার 5.3 ইনস্টলেশনটি কাছাকাছি বসে থেকে পুরানো প্যাকেজটি পেয়েছেন peclএবং 5.4 সংস্করণের পরিবর্তে এটি সন্ধান এবং ব্যবহার করছেন। আপনার পিএইচপি-সম্পর্কিত প্যাকেজ তালিকা ( dpkg -l '*php*') দেখুন এবং দেখুন যে কোনও 5.3 টি প্যাকেজ বাকি আছে এবং সেগুলি আপগ্রেড করুন।

আমি এই সঙ্গে আমার নিজের প্রশ্নের উত্তর দিচ্ছিলাম! ধন্যবাদ!
কাভিসিগেল

তাহলে এটি কোনটি ছিল?
দোলা

2
আমাকে আপডেট করতে হয়েছিল php5-dev, মঙ্গো আনইনস্টল করুন তারপরে পুনরায় ইনস্টল করুন।
কাভিসিগেল

যা আমার জন্য পুরোপুরি কাজ করেছে
অলিভার বেয়েস-শেলটন

2

দুর্দান্ত মন একসাথে চিন্তা করে, কি ঘটছে তা বুঝতে পেরে মুহুর্তগুলি পোস্ট করা মুহুর্তগুলি। তার উত্তরটি সঠিক এবং আমার আগে তাই আমি উত্তর হিসাবে এটি গ্রহণ করব তবে ভবিষ্যতের রেফারেন্সের জন্য সমাধানটি হ'ল:

apt-get update
apt-get install php5-dev
pecl uninstall mongo
pecl install mongo
/etc/init.d/php5-fpm restart

এবং অবশ্যই, mongo.so ইতিমধ্যে php.ini তে এমনভাবে ছিল যাতে পেকল এটিকে সরিয়ে না দেয়, যাতে এটি আপগ্রেড করা কিছুটা সহজ করে তোলে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.