سؤال

أحاول تثبيت Pysqlite ولديك مشاكل مع ذلك. اكتشفت أن السبب الأكثر احتمالا لهذا هو مفقود رؤوس SQLite وعلي تثبيتها. منصة: Centos الإصدار 5.3 (نهائي). لدي Python-2.6.2.

كما اكتشفت أنني بحاجة إلى ملفات .rpm. بقدر ما أملك أنا أعمل:

rpm -i sqlite3-devel-3.n.n.n.rpm

وكل شيء يجب أن يكون على ما يرام.

ومع ذلك، لا أعرف من أين أجد ملف SQLite3-DEVEL-3.NNNRPM. يجب أن يكون بالفعل على نظامي؟ لم أستطع تحديد موقعه مع "تحديد موقع SQLite3-Devel-3". يجب أن أقوم بتنزيل هذا الملف؟ إذا كانت الإجابة بنعم حيث يمكنني العثور عليها وأي إصدار يجب أن أستخدمه؟ أعني، يجب أن يكون ملف .rpm، ربما، بما يتوافق مع إصدار SQLite الذي لدي على جهاز الكمبيوتر الخاص بي؟ إذا كان الأمر كذلك، كيف يمكنني معرفة إصدار SQLite الخاص بي؟

إذا اكتب "من pysqlite2 استيراد dbapi2 as sqlite" أحصل على:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named pysqlite2

"Yum Search Pysqlite" يعطيني ما يلي:

Loaded plugins: fastestmirror
Excluding Packages in global exclude
list Finished
==== Matched: pysqlite ==== python-sqlite.x86_64 : Python bindings
for sqlite.

بالمناسبة، لدي الدليل التالي: / home/myname/opt/lib/python2.6/sqlite3 وهناك لدي الملفات التالية:

dbapi2.py  dbapi2.pyc  dbapi2.pyo 
dump.py  dump.pyc  dump.pyo 
__init__.py  __init__.pyc  __init__.pyo  test

إذا قمت بكتابة "استيراد Unittest" ثم "استيراد SQLite3 ك SQLite" أحصل على:

Traceback (most recent call last):  
File "<stdin>", line 1, in <module>  
File "/home/myname/opt/lib/python2.6/sqlite3/__init__.py", line 24, in <module>
    from dbapi2 import *   File "/home/myname/opt/lib/python2.6/sqlite3/dbapi2.py",
line 27, in <module>
    from _sqlite3 import * ImportError: No module named _sqlite3

شكرا لكم مقدما.

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

المحلول

يمكنك استخدام Buildout لإنشاء إصدار مترجم من مشروعك. سيؤدي ذلك إلى تثبيت جميع الحزم اللازمة دون الحصول على سودو الوصول إلى الخادم.

لإعطائها محاولة، قم بما يلي:

mkdir tmp
cd tmp
wget http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py
python bootstrap.py init
vim buildout.cfg

تحرير buildout.cfg واستبدلها مع التالية:

[buildout]
parts = sqlite 

[sqlite]
recipe = zc.recipe.egg
eggs = pysqlite
interpreter = mypython

الآن، تشغيل ./Bin/Buildout لإعادة بناء المشروع. سيقوم ذلك بتنزيل جميع الحزم الضرورية وإنشاء مترجم جديد لك يمكنك استخدام الاختبار الذي يمكنك الوصول إليه SQLite.

./bin/buildout
./bin/mypython
>>> import sqlite3

يمنحك هذا بيئة خاضعة للرقابة يمكنك استخدامها لتطويرها داخل. لمعرفة المزيد حول Buildout، يمكنك مشاهدة مقاطع الفيديو من Pycon 2009 على Setuptools و Distutils و Buildout.

البيض ونشر المبنى في بيثون - الجزء 1

البيض ونشر بناء في بيثون - الجزء 2

البيض ونشر المبنى في بيثون - الجزء 3

حظا طيبا وفقك الله

نصائح أخرى

تشمل Python 2.6 (وبعضها سابقا) SQLite مكتبة بيثون ORG المرجع لذلك يجب ألا تحتاج إلى القيام بذلك. مجرد استيرادها وتشغيل

عادة، يجب عليك تثبيت الثعبان sqlite الوحدة من خلال yum, ، شيء مثل:

yum install python-sqlite

ثم قم بتحرير تغيير الكود الخاص بك sqlite2 ما يشير إلى sqlite3.

بالمناسبة، كلما قرأت التوجيهات لتثبيت sqlite3-devel-3.n.n.n.rpm, ، ال n أجزاء ليست حرفية؛ من المفترض أن يتم استبدالهم بالأرقام التي تحدد إصدارا من حزمة RPM.

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