使用BuildRoot 2017.08编译错误



我有一个自定义的python数据包,它在setup.py中导入sqlite3。使用BuildRoot 2017.02编译时(命令:清洁全部),没问题。但是,将BuildRoot更新为2017.08(命令:全部清洁)后,我收到了编译错误。

Traceback (most recent call last):
  File "setup.py", line 4, in <module>
    import sys, glob, sqlite3
ImportError: No module named sqlite3

以下是我在//buildroot/output/host/中找到" sqlite*"的列表,它在主机文件夹中具有sqlite3数据包(2017.08):

./arm-buildroot-linux-gnueabi/sysroot/usr/lib/pkgconfig/sqlite3.pc
./arm-buildroot-linux-gnueabi/sysroot/usr/lib/python2.7/sqlite3
./arm-buildroot-linux-gnueabi/sysroot/usr/share/man/man1/sqlite3.1
./arm-buildroot-linux-gnueabi/sysroot/usr/bin/sqlite3
./arm-buildroot-linux-gnueabi/sysroot/usr/include/sqlite3ext.h
./arm-buildroot-linux-gnueabi/sysroot/usr/include/sqlite3.h
./lib/pkgconfig/sqlite3.pc
./share/man/man1/sqlite3.1
./bin/sqlite3
./include/sqlite3ext.h
./include/sqlite3.h

每个提示都非常感谢。

这绝对不应该开始工作。主机 - 派森是在buildroot中没有SQLITE3模块(CFR。--disable-sqlite3中的CC_1)中构建的。因此,不应从setup.py脚本导入SQLITE3模块。此--disable-sqlite3选项已经存在了很长时间。

更改IIN 2017.08的一件事是从PYTHON_PATH中删除了$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages。因此,也许您以前在那里安装了SQLite3模块,并且碰巧工作了。

最简单的解决方案可能是将--disable-sqlite3更改为--enable-sqlite3,并使主机python取决于主机 - sqlite3。

最新更新