ImportError:没有名为bb的模块

Nit*_*kar 2 python packages package openembedded bitbake

要创建一个HelloWorld .ipk程序包,所描述的在这里,我克隆bitbakeOpenEmbedded作为

git clone git://git.openembedded.org/bitbake
git clone git://git.openembedded.org/openembedded
Run Code Online (Sandbox Code Playgroud)

然后导出以下varibales

export OEBASE=/media/sda3/open_env/
export PATH=$OEBASE/bitbak/ebin:$PATH
export BBPATH=$OEBASE/build:$OEBASE/openembedded
export BB_ENV_EXTRAWHITE="OEBASE"
Run Code Online (Sandbox Code Playgroud)

当我运行以下命令时,我得到以下错误:

bitbake -b packages/myhelloworld/myhelloworld_0.1.bb

Traceback (most recent call last):
  File "/usr/bin/bitbake", line 35, in <module>
    import bb
ImportError: No module named bb
Run Code Online (Sandbox Code Playgroud)

我这样做ubuntu 10.04.我在这里缺少什么?

编辑:

如回答所示,我执行了以下命令并获得如下错误:

git clone git://git.openembedded.org/openembedded-core
cd openembedded-core
git clone git://git.openembedded.org/bitbake

cd ..
git checkout dylan
cd bitbake
git checkout 1.18
cd ..

. oe-init-build-env
Run Code Online (Sandbox Code Playgroud)

build/conf/local.confmyhelloworlddir中修改并创建dir openembedded-core/build/然后执行

bitbake myhelloworld/
Run Code Online (Sandbox Code Playgroud)

我收到的错误是:

Traceback (most recent call last):
  File "/media/sda3/open_env/openembedded-core/bitbake/bin/bitbake", line 34, in <module>
    import bb
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py:104: RuntimeWarning: Parent module 'bb' not found while handling absolute import
  from bb.msg import BBLogFormatter
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/home/python-2.7.3/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py", line 104, in print_ui_queue
    from bb.msg import BBLogFormatter
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
Error in sys.exitfunc:
Traceback (most recent call last):
  File "/home/python-2.7.3/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py", line 104, in print_ui_queue
    from bb.msg import BBLogFormatter
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
Pseudo is not present but is required, building this first before the main build
Traceback (most recent call last):
  File "/media/sda3/open_env/openembedded-core/bitbake/bin/bitbake", line 34, in <module>
    import bb
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py:104: RuntimeWarning: Parent module 'bb' not found while handling absolute import
  from bb.msg import BBLogFormatter
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/home/python-2.7.3/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py", line 104, in print_ui_queue
    from bb.msg import BBLogFormatter
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
Error in sys.exitfunc:
Traceback (most recent call last):
  File "/home/python-2.7.3/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py", line 104, in print_ui_queue
    from bb.msg import BBLogFormatter
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
Traceback (most recent call last):
  File "/media/sda3/open_env/openembedded-core/bitbake/bin/bitbake", line 34, in <module>
    import bb
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py:104: RuntimeWarning: Parent module 'bb' not found while handling absolute import
  from bb.msg import BBLogFormatter
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/home/python-2.7.3/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py", line 104, in print_ui_queue
    from bb.msg import BBLogFormatter
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
Error in sys.exitfunc:
Traceback (most recent call last):
  File "/home/python-2.7.3/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/event.py", line 104, in print_ui_queue
    from bb.msg import BBLogFormatter
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/__init__.py", line 77, in <module>
    from bb import fetch2 as fetch
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/fetch2/__init__.py", line 38, in <module>
    import bb.persist_data, bb.utils
  File "/media/sda3/open_env/openembedded-core/bitbake/lib/bb/persist_data.py", line 35, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named pysqlite2
Run Code Online (Sandbox Code Playgroud)

And*_*ers 6

你正在将最近的bitbake与OpenEmbedded classic混合在一起; 请不要这样做.您还尝试手动设置构建环境,也避免使用它.任何新的开发都应该基于OpenEmbedded Core.

你应该做什么:

  1. 克隆存储库.

    git clone git://git.openembedded.org/openembedded-core
    cd openembedded-core
    git clone git://git.openembedded.org/bitbake
    
    Run Code Online (Sandbox Code Playgroud)

    如果你想使用某个分支,例如jethro

    git checkout jethro
    cd bitbake
    git checkout 1.28
    cd ..
    
    Run Code Online (Sandbox Code Playgroud)

    请参阅OE-core和bitbake的相应发布分支.

  2. 设置构建环境:

    . oe-init-build-env
    
    Run Code Online (Sandbox Code Playgroud)
  3. 配置构建.

    即设置正确的机器等build/conf/local.conf.

  4. 建立!

    现在做你想要的,例如:

    bitbake core-image-minimal
    bitbake myehelloworld
    
    Run Code Online (Sandbox Code Playgroud)

更新:请注意,最后一个版本(Poky正式测试的Ubuntu 10.04Dylan).以后的版本可能会在该主机上出现问题,我建议更新到更新的LTS版本.

更新2:您的新错误说ImportError: No module named pysqlite2.Bitbake将首先寻找sqlite3.在构建主机上安装它apt-get install libsqlite3-dev