Typeerror при установке цели для сборки fuchsia

Пытаюсь установить цель перед сборкой Fuchsia, но получаю следующую ошибку. Я попытался преобразовать sep в байт с помощью b.startswith(b'sep'), тогда он выдает ошибку. Так что я просто не знаю, как с этим бороться. Я ничего не знаю о питоне.

prashant@prashant-Lenovo:~/fuchsia$ scripts/fx set x64

и вывод:

ERROR at //build/gn/BUILD.gn:67:5: Script returned non-zero exit code.
    exec_script("//build/zircon/list_source_files.py", [], "list lines")
    ^---------- Current dir: /home/prashant/fuchsia/out/x64/ Command: /usr/bin/env -- /home/prashant/fuchsia/build/zircon/list_source_files.py Returned 1. stderr:

Traceback (most recent call last):   File "/home/prashant/fuchsia/build/zircon/list_source_files.py", line 36, in <module>
    sys.exit(main())   File "/home/prashant/fuchsia/build/zircon/list_source_files.py", line 31, in main
    for file in get_files():   File "/home/prashant/fuchsia/build/zircon/list_source_files.py", line 27, in get_files
    return [os.path.join(ZIRCON_ROOT, file) for file in files]   File "/home/prashant/fuchsia/build/zircon/list_source_files.py", line 27, in <listcomp>
    return [os.path.join(ZIRCON_ROOT, file) for file in files]   File "/usr/lib/python3.6/posixpath.py", line 87, in join
    if b.startswith(sep): TypeError: startswith first arg must be bytes or a tuple of bytes, not str
1
0
104
1

Ответы 1

Я тоже столкнулся с этой конкретной проблемой. Проблема, вероятно, связана с тем, что python вашей системы имеет псевдоним python3 вместо python2.

Это ошибка в скриптах сборки цвета фуксии. Это может быть решено одним из следующих способов:

  • Обновление интерпретатора python вашего файла с #!/usr/bin/env python на #!/usr/bin/env python2
  • Настройте python вашей системы так, чтобы он указывал на python2. Это может сломать другие вещи в вашей системе.

Другие вопросы по теме