2

Я использую Ubuntu 10.04, и я только что установил Mercurial 1.5.4 из источника (см. Этот вопрос для некоторых проблем с установкой, которые у меня были). Теперь, однако, когда я призываю:

hg

Я получаю следующее:

  File "/usr/local/bin/hg", line 27, in <module>
    mercurial.dispatch.run()
  ...
  File "/usr/lib/pymodules/python2.6/mercurial/demandimport.py", line 47, in _load
    mod = _origimport(head, globals, locals)
ImportError: No module named osutil

еще

find /usr/local/lib -name osutil* -print

возвращается

/usr/local/lib/python2.6/dist-packages/mercurial/osutil.so

который я предполагаю, может быть загружен скриптами Python, похожими на Perl и XS. За исключением добавления python-dev (см. Ответ по ссылке выше), моя установка Python точно такая же, как и в Ubuntu 10.04 после обновления до 10.04 с 9.10.

В чем дело?

4 ответа4

2

Обычно это означает, что вам нужно удалить пакет mercurial-common из Ubuntu - он может быть раньше на пути поиска Python и вызывать странные проблемы, подобные этой.

1

Согласно http://mercurial.808500.n3.nabble.com/Mercurial-1-5-2-released-td806821.html, вам нужен пакет python-dev. Например, в Debian или Ubuntu вы должны установить его с

sudo apt-get install python-dev

Если это не сработает сразу же, повторите установку исходного кода Mercurial, и это может решить проблему (это помогло мне).

0

Просто для того, чтобы помочь другим, я только что решил отсутствующий osutil.py в Ubuntu 13.04, без которого Mercurial не будет работать.

Мне пришлось установить python-sphinx (и связанный). Это похоже на ошибку проверки зависимостей в пакете mercurial.

0

если вы работаете в Windows, вы найдете папку "pure" внутри "\site-packages\mercurial\". Внутри него есть куча .py (osutil.py - один из них)

Просто скопируйте все файлы из "pure" в папку "mercurial" и СДЕЛАНО! Это только начинает работать.

Надеюсь это поможет!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .