這真讓我抓狂!您可以提供的任何幫助都將受到歡迎!
我有一個在 debian 上運行良好的 python3/sqlite 應用程式(在虛擬環境中運行)。我需要將它安裝在 freebsd 上(在虛擬環境中運行)。我已經安裝了 python3 和 sqlite(我可以從命令列打開一個 .sqlite 檔案)。
當我嘗試運行 python 腳本時,出現以下錯誤:
(venv) [jordan@webServer ~/crons/powerwall]$ python3 main.py
Traceback (most recent call last):
File "/usr/home/jordan/crons/powerwall/main.py", line 78, in <module>
run()
File "/usr/home/jordan/crons/powerwall/main.py", line 33, in run
database.load_db(config_mgr=config)
File "/usr/home/jordan/crons/powerwall/database.py", line 108, in load_db
db = PowerWallDb(cfg_mgr=config_mgr)
File "/usr/home/jordan/crons/powerwall/database.py", line 94, in __init__
super().__init__(cfg_mgr=cfg_mgr, section=section)
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/thompcoutils/db_utils.py", line 77, in __init__
self._connect_sqlite(self.sqlite_file, check_same_thread=False)
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/thompcoutils/db_utils.py", line 99, in _connect_sqlite
self._connect_uri(uri, **kwargs)
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/thompcoutils/db_utils.py", line 95, in _connect_uri
self.connection = sqlobject.sqlhub.processConnection = sqlobject.connectionForURI(uri, **kwargs)
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/sqlobject/dbconnection.py", line 1105, in connectionForURI
conn = connCls.connectionFromURI(uri)
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/sqlobject/dbconnection.py", line 154, in connectionFromURI
return cls._connectionFromParams(*cls._parseURI(uri))
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/sqlobject/sqlite/sqliteconnection.py", line 122, in _connectionFromParams
return cls(filename=path, **args)
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/sqlobject/sqlite/sqliteconnection.py", line 64, in __init__
raise ImportError(
ImportError: Cannot find an SQLite driver, tried supersqlite,pysqlite2,sqlite3,sqlite
Exception ignored in: <function DBAPI.__del__ at 0x8029c1310>
Traceback (most recent call last):
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/sqlobject/dbconnection.py", line 704, in __del__
self.close()
File "/usr/home/jordan/crons/powerwall/venv/lib/python3.9/site-packages/sqlobject/sqlite/sqliteconnection.py", line 217, in close
if self._memory:
AttributeError: 'SQLiteConnection' object has no attribute '_memory'
uj5u.com熱心網友回復:
您必須安裝py-sqlite3,它是“標準 Python 系結到 SQLite3 庫”
從埠安裝:
cd /usr/ports/databases/py-sqlite3/ && make install clean
從 pkg 安裝:
pkg install databases/py-sqlite3
uj5u.com熱心網友回復:
基本上,SQLite 的標準 Python 系結看起來像是 FreeBSD 上的一個單獨的包(也許,在所有 *nix/*BSD 上)。因此,一般來說,您需要三個組件,Python、SQLite(這對于 Python 可能實際上不是必需的)和SQLite 的標準 Python 系結。我沒有使用過 FreeBSD,但基于谷歌搜索,您是否嘗試過安裝此https://pkgs.org/download/py39-sqlite3?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/510185.html
下一篇:引數的型別不受支持
