আপনাকে একটি সার্ভার-সাইড এক্সটেনশন তৈরির জন্য postgresql-server-dev-XY বা ক্লায়েন্ট-সাইড অ্যাপ্লিকেশন তৈরি করার জন্য libpq-dev ইনস্টল করতে হবে


243

আমি ভ্যাচুয়ালেনভের সাথে জাজানো প্রকল্পে কাজ করছি এবং এটিকে স্থানীয় পোস্টগ্রিজ ডাটাবেসের সাথে সংযুক্ত করছি। আমি যখন প্রকল্পটি চালাই তখন বলা হয়,

ImportError: No module named psycopg2.extensions

তারপরে আমি এই কমান্ডটি ইনস্টল করতে ব্যবহার করেছি

pip install psycopg2

তারপরে ইনস্টলেশনের সময় এটি নিম্নলিখিত ত্রুটি দেয়।

Downloading/unpacking psycopg2==2.4.4
  Downloading psycopg2-2.4.4.tar.gz (648kB): 648kB downloaded
  Running setup.py (path:/home/muhammadtaqi/Projects/MyProjects/OnlineElectionCampaign/venv/build/psycopg2/setup.py) egg_info for package psycopg2

    Error: You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.

    Complete output from command python setup.py egg_info:
    running egg_info

creating pip-egg-info/psycopg2.egg-info

writing pip-egg-info/psycopg2.egg-info/PKG-INFO

writing top-level names to pip-egg-info/psycopg2.egg-info/top_level.txt

writing dependency_links to pip-egg-info/psycopg2.egg-info/dependency_links.txt

writing manifest file 'pip-egg-info/psycopg2.egg-info/SOURCES.txt'

warning: manifest_maker: standard file '-c' not found



Error: You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.



----------------------------------------
Cleaning up...
Command python setup.py egg_info failed with error code 1 in /home/muhammadtaqi/Projects/MyProjects/OnlineElectionCampaign/venv/build/psycopg2
Storing debug log for failure in /home/muhammadtaqi/.pip/pip.log

আপনি কি এই প্যাকেজ ইনস্টল করেছেন? যদি তা না হয় তবে এটি ইনস্টল করা সমস্যার সমাধান করা উচিত। দয়া করে মনে রাখবেন যে postgresql-server-X.Yএকা ইনস্টল করা কোনও উপকারে আসবে না, কারণ এটি কেবল সার্ভার বাইনারি, লাইব্রেরি এবং ডেটা ফাইল ইনস্টল করে, উন্নয়ন ফাইলগুলি নয় (যা পূর্বোক্ত প্যাকেজের মধ্যে রয়েছে)।
অ্যাব্রিকাস 2

উত্তর:


490

নিম্নলিখিত কমান্ডগুলি ব্যবহার করুন, এটি ত্রুটিটি সমাধান করবে:

sudo apt-get install postgresql

তারপরে আগুন:

sudo apt-get install python-psycopg2

এবং শেষে:

sudo apt-get install libpq-dev

36
আমি শুধু ক্লায়েন্ট libs প্রয়োজন। "sudo apt-get libpq-dev ইনস্টল করুন" এটি আমার জন্য সমাধান করেছে। ধন্যবাদ
প্রিয়েশজ

6
আমি দেখতে পেলাম যে sudo apt-get install python-devশেষ পর্যন্ত এটির কাজ করার জন্য আমাকে আরও ইনস্টল করতে হয়েছিল
স্কটএমসিসি

18
ধন্যবাদ! sudo apt-get install libpq-devআমার জন্য কাজ!
জুলিয়ান গুটারম্যান

1
@ মণীশশ্রীবাস্তব, স্বাগতম
মেগা বাইটস

1
sudo apt-get install python3-psycopg2পাইথন 3
রমেশ ভার্মা

67

আমি এই কমান্ডটি কেবল টার্মিনাল থেকে মূল হিসাবে চালাচ্ছি এবং সমস্যার সমাধান হয়েছে,

sudo apt-get install -y postgis postgresql-9.3-postgis-2.1
pip install psycopg2

অথবা

sudo apt-get install libpq-dev python-dev
pip install psycopg2

5
অনেক ধন্যবাদ, libpq-devএবং python-devপ্রয়োজনীয় যাদু করেছেন
এভটোমাটন

2
postgis? woot
টেককুজ

কখনও কখনও চলমান sudo অ্যাপ্ট আপডেট এই ধরণের ত্রুটিগুলি ঠিক করে দেবে। আমি উভয় সমাধান চেষ্টা করেও ব্যর্থ হয়েছি। চলমান সুডো আপ্ট আপডেট এটি সমাধান করেছে।
আলেম


30

আমার জন্য এই সহজ কমান্ডটি সমস্যার সমাধান করেছে:

sudo apt-get install postgresql postgresql-contrib libpq-dev python-dev

তারপরে আমি এটি করতে পারি:

 pip install psycopg2

14

পাইথন 3 এর জন্য, আমি করেছি:

sudo apt install python3-dev postgresql postgresql-contrib python3-psycopg2 libpq-dev

এবং তারপরে আমি তা করতে সক্ষম হয়েছি:

pip3 install psycopg2

13

তারা সাইকোপজি 2 এর জন্য প্যাকেজিং পরিবর্তন করেছে। বাইনারি সংস্করণ ইনস্টল করা আমার জন্য এই সমস্যাটি স্থির করেছে। আপনি বাইনারি নিজেই সংকলন করতে চাইলে উপরের উত্তরগুলি এখনও ধরে আছে।

Http://initd.org/psycopg/docs/news.html#hat-s-new-in-psycopg-2-8 দেখুন ।

বাইনারি প্যাকেজগুলি আর ডিফল্টরূপে ইনস্টল করা হয় না। 'সাইকোপজি ২-বাইনারি' প্যাকেজটি অবশ্যই স্পষ্টভাবে ব্যবহার করা উচিত।

এবং http://initd.org/psycopg/docs/install.html#binary-install-from-pypi

সুতরাং আপনার নিজের বাইনারি সংকলনের প্রয়োজন না হলে ব্যবহার করুন:

pip install psycopg2-binary

1
আপনি স্যার আমার জীবন বাঁচালেন
হারুন হাজেম

3
psycopg2-binaryউত্পাদনে অবশ্যই ব্যবহার করা উচিত নয়, কারণ এটি কিছু বাগ তৈরি করবে।
suhailvs

1
psycopg2-binaryউত্পাদনে ব্যবহার করা উচিত নয়: initd.org/psycopg/docs/install.html#binary-install-from-pii (অনুলিপি করা পাঠ্য: সাইক্রোপজি 2-বাইনারি প্যাকেজটি অর্থাত্ পাইথন এবং পোস্টগ্রিসকিউএলএর সাথে খেলতে শুরু করার জন্য বিনা প্রয়োজনে তৈরি করা হয়েছে বিল্ডের প্রয়োজনীয়তাগুলি পূরণ করুন p আপনি যদি সাইকোপজি 2 এর উপর নির্ভর করে প্রকাশিত প্যাকেজটির রক্ষণকারী হন তবে আপনাকে মডিউল নির্ভরতা হিসাবে 'সাইকোপজি 2-বাইনারি' ব্যবহার করা উচিত নয় production উত্পাদনের ব্যবহারের জন্য উত্স বিতরণ ব্যবহার করার পরামর্শ দেওয়া হচ্ছে))
জোসেফ ভিক্টর জামিট

10

আপনাকে অবশ্যই postgresql-server-dev-XY সেটআপ করতে হবে যেখানে XY আপনার সার্ভার সংস্করণ রয়েছে এবং এটি সার্ভার সাইড বিকাশের জন্য মডিউলগুলিতে libpq-dev এবং অন্যান্য সার্ভার ভেরিয়েবল ইনস্টল করবে। আমার ক্ষেত্রে ছিল

apt-get install postgresql-server-dev-9.5

প্যাকেজ তালিকাগুলি পড়ছে ... সম্পন্ন বিল্ডিং নির্ভরতা ট্রি রাষ্ট্রের তথ্য পড়ছে ... সম্পন্ন নিম্নলিখিত প্যাকেজগুলি স্বয়ংক্রিয়ভাবে ইনস্টল হয়ে গেছে এবং আর প্রয়োজন নেই: libmysqlclient18 mysql- সাধারণ সেগুলি মুছে ফেলার জন্য 'apt-get autoremove' ব্যবহার করুন। নিম্নলিখিত অতিরিক্ত প্যাকেজ ইনস্টল করা হবে:
libpq-dev প্রস্তাবিত প্যাকেজগুলি: postgresql-doc-10 নিম্নলিখিত নতুন প্যাকেজ ইনস্টল করা হবে: libpq-dev postgresql-server-dev-9.5

আপনার ক্ষেত্রে

sudo apt-get install postgresql-server-dev-X.Y
sudo apt-get install python-psycopg2

4

আমি উবুন্টু 18.04 এ একটি ভার্চুয়াল পরিবেশ ব্যবহার করছিলাম এবং যেহেতু আমি কেবল এটি ক্লায়েন্ট হিসাবে ইনস্টল করতে চেয়েছি, কেবল আমার করতে হয়েছিল:

sudo apt install libpq-dev
pip install psycopg2

এবং সমস্যা ছাড়াই ইনস্টল করা। অবশ্যই, আপনি অন্যান্য উত্তরগুলির হিসাবে বাইনারিটি ব্যবহার করতে পারেন তবে আমি এই সমাধানটিকে অগ্রাধিকার দিয়েছিলাম কারণ এটি প্রয়োজনীয়তা.এসটিএসটি ফাইলে বলা হয়েছিল।

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