У меня есть файл setup.py, который создает расширение. Если я изменяю один из исходных файлов, distutils распознает это и пересобирает расширение, показывая все команды компиляции/линковки.
Однако, если единственное, что я меняю, это setup.py (я возился, пытаясь заставить работать зависимости библиотек), то он, похоже, не перестраивается (например, ни одна из команд компиляции/ссылки не отображается). Я проверил это, удалив один из исходных файлов в строке
sources = ['foo.c', 'bar.c' ...]
и когда я pip install -e .
или python setup.py install
, он все равно создает новый файл для расширения, но это должна быть версия, кэшированная где-то, поскольку она не должна компилироваться.
Как очистить этот кеш? я пытался
python setup.py clean --all
или используя флаги --ignore-installed
и --no-cache-dir
при выполнении pip install -e .
Единственный способ, который я нашел для его перестроения, - это добавить мусор в исходный файл, вызвать перестроение и ошибку, удалить мусор и снова pip install -e .
...