1. 编译过程要求使用python3.7以上,但是还要把系统缺省python换成python3,否则报错。对于有多个开发环境的过此,这样的设置往往带来很多麻烦。所以,建议使用virtualENV虚拟环境搭建。这里就不多分析。
2、根据使用python3和python2的运行过此,分析为什么python2.7不能使用。直接用python3 build.py wifiiot
显示上述问题,那么编译build.py看问题在哪里,
- import sys
- import argparse
- import importlib
- import logging
- import os
- def usage():
- msg = "n python build.py ipcamera_hi3516dv300n "
- "python build.py ipcamera_hi3518ev300n "
- "python build.py wifiiot"
- return msg
- def main():
- if not __package__:
- path = os.path.join(os.path.abspath(os.path.dirname(__file__)),
- 'build')
- sys.path.insert(0, path)
- parser = argparse.ArgumentParser(usage=usage())
- parser_list = []
- parser_list.append({
- 'name': 'compile',
- 'help': 'Build source code'
- })
- for each in parser_list:
- module = importlib.import_module('.{}'.format(each.get('name')),
- 'lite')
- module.add_options(parser)
- parser.set_defaults(command=module.exec_command)
- args = parser.parse_args()
- try:
- status = args.command(args)
- except KeyboardInterrupt:
- logging.warning('interrupted')
- status = -1
- except Exception as e:
- print(e)
- parser.print_help()
- status = -1
- return status
- if __name__ == "__main__":
- sys.exit(main())
复制代码在前面直接使用的是python,那么用软连接ln 可以把python3连接到python就可以。
或者在用户组中设定别名
alias python='/usr/bin/python3.6'
同样可以起到作用
但是使用python3.6还是出现了语法的问题,
3.需要安装新版3.8,不过最新到已经是3.10了
不用下载压缩文件,直接用源文件安装就可以的。