Я пытаюсь создать пакет, и у меня возникают проблемы с его сборкой. Один (или несколько) патчей для doxygen, установленных с 12.04.1 (Precise), 1.7.4-3, заставляет doxygen НЕ запускать сценарий моего фильтра через файлы Tcl, если файл назван с расширением .tcl ( нормальное расширение для файлов Tcl). Если расширение является чем-то другим, например .src, фильтр запускается, как и ожидалось. Я использую .tcl для библиотечных или вспомогательных файлов, которые являются явными исходниками, и .src для «основных» программ, которые не являются таковыми. (Да, у меня есть правильные шаблоны имен файлов и т. Д. В Doxyfiles - весь мой пакет прекрасно собирается под CentOS 5 и CentOS 6, а под CentOS 5 я даже использую RPM, который я собрал из doxygen 1.7.4 ( в основном это не исправленная версия). Когда я собираю doxygen вручную без исправлений Ubuntu / Debian под Ubuntu 12.04.1, он также работает правильно. Установленная версия не работает правильно. Я думаю, один (или более?) из патчей ломает что-то в doxygen. Список изменений не очень поучителен.
Я буду создавать тривиальный пакет, который иллюстрирует проблему завтра.
Во-первых, Точная версия по умолчанию doxygen
1.7.6.1-2ubuntu1
, как отмечено в пакетах Ubuntu, таким образом, я не уверен, почему Вы упоминаете 1.7.4-3, поскольку это - 11,10 Сновещательных версий по умолчанию. Я должен проверить, идете ли Вы действительно Точные, или обновили правильно.
Версия, которую Вы используете все еще, имеет doxygen_direct_dot_run.diff
патч применялся, в то время как фактическая версия для Точного, (1.7.6.1-2ubuntu1) не имеет примененным. Так использование реальной Точной версии могло бы решить некоторые проблемы, поскольку это имеет другие патчи также. Нет никаких текущих ошибок, описывающих Вашу проблему в Launchpad, таким образом, это могло быть новое.
В более общем плане, патчи и журналы изменений
Когда Вы загружаете источник (apt-get source doxygen
), Вы видите, какие патчи применяются (для doxygen в Точном):
dpkg-source: info: applying manpages.diff
dpkg-source: info: applying dot-config.diff
dpkg-source: info: applying gcc-g.diff
dpkg-source: info: applying doxygen-jquery.patch
Однако можно также загрузить источник программы без применяемых патчей или распакованные пакеты:
apt-get source doxygen --download-only
(Вы могли создать пакет и опустить некоторые патчи, если бы Вы хотели.)
Если Вы использовали --download-only
переключатель к apt-get source
у Вас будет 2 пакета и файл подписи. Можно распаковать doxygen_1.7.6.1-2ubuntu1.debian.tar.gz
просмотреть патчи, журнал изменений и правила (не все патчи в папке патчей будут на самом деле использоваться).
Журнал изменений будет содержать ссылки на патчи и будет всегда включать Debian (#number) или Панель запуска (LP: #number) ошибки, и это может искаться на соответствующих средствах отслеживания ошибки. Это - лучший способ найти больше информации о патчах, чем в очень кратком журнале изменений.
Примеры от doxygen исходного журнала изменений:
Не применяйте doxygen_direct_dot_run.diff. Завершения: № 618125.
Теперь № 618125 является debian билетом, таким образом, можно искать ошибки числом в debian и найти больше деталей.
Добавьте метаданные мультидуги для удовлетворения перекрестных зависимостей (LP: № 971739)
Точно так же для нахождения большей информации Вы искали бы эту ошибку в Launchpad путем введения номера.
В более общем плане Вы могли также перейти к patches.ubuntu.com:
Эти патчи ежедневно сгенерированы и содержат различия между исходным пакетом Ubuntu и эквивалентной версией того же источника в Debian.
Кроме обсуждения самого потока ошибки, форумов, или на irc каналах, эти пути расследования о большинстве, которое можно использовать для обнаружения об объяснении для патчей.
Хорошо, проблемой не является Ubuntu, но сам doxygen. Кажется, что doxygen 1.7.6.1 прерван, что это не соблюдает настройки фильтра для файлов, названных *.tcl, но идет вперед и использует его собственный внутренний синтаксический анализатор, который не работает на мои комментарии, так как они были записаны с мой фильтр в памяти и были записаны, прежде чем doxygen имел любое понятие контакта с источником Tcl. Я должен буду понизить версию doxygen на моих полях сборки Ubuntu и пойти, беспокоят людей Doxygen об этой проблеме.