Вы читали clang
документацию ? Вероятно, вы ищете -emit-llvm
.
Я не уверен, что является причиной проблемы. Но исправление для этого состоит в том, чтобы удалить все атрибуты в флагах, прежде чем вы фактически определите флаги, используя следующий код:
for name in list(flags.FLAGS):
delattr(flags.FLAGS,name)
Надеюсь, это поможет. Любой, кто знает действительную причину проблемы, может ответить на нее точно.
ОБНОВЛЕНИЕ: причина частично решена в этом Запуск модуля в пакете, импорт подпакета . Вывод: если вы часто запускаете модуль в виде сценария, вам, вероятно, следует создать новый модуль сценария верхнего уровня, который импортирует модуль из пакета и запускает нужный код. Это препятствует тому, чтобы модуль с полным кодом потенциально мог существовать дважды, а также позволяет извлечь выгоду из загрузки кэшированного байт-кода из файла .pyc (что может ускорить запуск вашей программы).
У моей посылки была циклическая зависимость. Следовательно, это может быть проблемой. Мне даже не нужно было удалять атрибут после того, как я переместил свой основной скрипт из пакета и запустил его нормально.