2010-06-13 12 views
24

Tôi đã cài đặt psycopg2 trong virtualenv sử dụng easy_install psycopg2. Tôi không thấy bất kỳ lỗi nào và trông giống như cài đặt đã ổn .. có một tệp trứng được tạo trong thư mục site-site cho psycopg2 ..Cài đặt psycopg2 (postgresql) trong virtualenv trên windows

nhưng khi tôi chạy psycopg2 nhập khẩu trong trình thông dịch, tôi nhận được lỗi sau. bất kỳ đầu mối nào? Làm thế nào tôi có thể sửa chữa nó .. bất kỳ cách nào khác để cài đặt psycopg2 trong virtualenv ..

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "build\bdist.win32\egg\psycopg2\__init__.py", line 69, in <module> 
    File "build\bdist.win32\egg\psycopg2\_psycopg.py", line 7, in <module> 
    File "build\bdist.win32\egg\psycopg2\_psycopg.py", line 6, in __bootstrap__ 

Cảm ơn.

Trả lời

4

Bạn đã kiểm tra xem thư mục 'bin' của PostgreSQL có nằm trên đường dẫn hệ thống không? Kiểm tra bằng cách gõ nhanh 'set' và xem những gì bạn nhận được.

Đây là nguyên nhân phổ biến nhất gây ra lỗi nhập psycopg2 trên Windows.

15

Chỉnh sửa: giải pháp này đã lỗi thời. Refer to this answer thay thế.

Tôi gặp vấn đề tương tự. Sau khi gợi ý về the download page của cảng Windows cho nhận nó làm việc trên Zope làm việc cho tôi dưới virtualenv (cũng trong phi ảo cài đặt):

  1. Tải tập tin thực thi, đổi tên phần mở rộng .exe để .zip
  2. Trích xuất nội dung tập tin.
  3. Sao chép thư mục psycopg2 để MyEnv/Lib
  4. Sao chép trứng để MyEnv/Lib/site-packages
+29

Bạn don' t cần phải làm điều này bằng tay. Bạn có thể chỉ cần 'easy_install http: // www.stickpeople.com/projects/python/win-psycopg/psycopg2-2.4.win32-pyx.x-pg9.0.3-release.exe' Hãy xem [this] (http : //stackoverflow.com/questions/5382801/where-can-i-download-binary-eggs-with-psycopg2-for-windows/5383266#5383266) trả lời. –

+0

Làm điều này bằng tay có lẽ là một ý tưởng tồi, vì nó sẽ làm cho virtualenv của bạn khó duy trì và tái tạo trên các máy khác. Tôi khuyên bạn nên tìm cách giải quyết khác. – slacy

+0

của nhãn hiệu là sai ở đây và @Piotr đã có câu trả lời đúng –

-3

Có một thay thế cho cài đặt các gói python trong tức là máy tính của bạn, pip. Bạn có thể tải về gói python bằng cách chỉ cần thực hiện: -

pip install pyscopg2 

Định dạng chung của lệnh là

pip install [package-name] 

PS: - Để cài đặt gói python toàn cầu thông qua pip

sudo pip install [package-name]