5

Привет, я знаю, что это может быть бессмысленным вопросом, но я должен спросить. Я установил TeXLive 2009 на Ubuntu 10.04 (x64), но сделал это вручную с помощью perl-скрипта " install-tl ", следуя инструкциям на http://tug.org/texlive/doc.html. Все другое программное обеспечение, которое я ранее установил, было

sudo aptitude install package-name

Причина, по которой я выполнил установку вручную, заключалась в том, что tlmgr не устанавливается с версией репозиториев aptitude, и я хотел быстрый способ установки / удаления пакетов, связанных с TeXLive-latex. Более того, я читал, что, как правило, репозитории TeXLive Ubuntu ', как правило, устарели.

Проблема, с которой я сейчас сталкиваюсь, заключается в том, что мне нужно установить другое связанное программное обеспечение, например auctex и когда я выпускаю

sudo aptitude install auctex

Я получаю, что все эти пакеты будут установлены:

 auctex emacs23{a} emacs23-bin-common{a} emacs23-common{a} 
  emacsen-common{a} lacheck{a} latex-beamer{a} latex-xcolor{a} lmodern{a} 
  luatex{a} pgf{a} preview-latex-style{a} prosper{a} ps2eps{a} 
  tex-common{a} texlive-base{a} texlive-binaries{a} texlive-common{a} 
  texlive-doc-base{a} texlive-extra-utils{a} texlive-font-utils{a} 
  texlive-generic-recommended{a} texlive-latex-base{a} 
  texlive-latex-base-doc{a} texlive-latex-recommended{a} 
  texlive-latex-recommended-doc{a} texlive-luatex{a} texlive-pstricks{a} 
  texlive-pstricks-doc{a} 

Даже если я попробую что-то вроде

sudo aptitude install --without-recommends auctex

Я все еще получаю

 auctex emacs23{a} emacs23-bin-common{a} emacs23-common{a} 
  emacsen-common{a} preview-latex-style{a} tex-common{a} 

Что намного лучше, чем раньше, но я все еще получаю tex-common который обычно устанавливается при полной установке TeXLive (я думаю). tex-common в свою очередь, устанавливается из-за стиля preview-latex-style , который, в свою очередь, необходим, потому что этого требует auctex .

Итак, мой вопрос. Есть ли способ сказать aptitude: « Эй, я уже установил их, так что не беспокойтесь о зависимостях, у меня они под контролем, несмотря на то, что вы никогда не видели их раньше?«? Будет ли auctex работать, несмотря на ручную установку TeXLive?

Любая помощь или идея очень ценится.

3 ответа3

3

Когда вы устанавливаете программу, которая не проходит через систему упаковки, устанавливайте ее в /usr/local (или в /opt , или в свой домашний каталог, но не в /usr). Если вам не хватает места на диске, вы можете оставить упакованную версию, если она есть.

Иногда бывает полезно сделать вид, что пакет установлен. Это можно сделать, установив фиктивный пакет, который ничего не делает, но требует и предоставляет зависимости. Системы, основанные на Debian (включая Ubuntu), предоставляют команду equivs-build в пакете equivs . Цитирование из описания пакета:

Этот пакет предоставляет инструмент для создания пакетов Debian, которые содержат только информацию о зависимостях.

Одним из применений для этого является создание метапакета: пакета, единственная цель которого - объявить зависимости и конфликты с другими пакетами, чтобы они автоматически устанавливались, обновлялись или удалялись.

Другое использование - обойти проверку зависимостей. Если пакет P не установлен в системе, пакеты, которые зависят от P, обычно не могут быть установлены. Однако, если известно, что функциональность, эквивалентная P, установлена, этот инструмент можно использовать, чтобы обмануть систему управления пакетами Debian, заставив ее поверить, что пакет P действительно установлен. ПРИМЕЧАНИЕ: это должно считаться грубым взломом для обхода неловких ситуаций, а не нормальным решением.

1

Я не могу взять весь беспорядок aptitude делать бананы только ради самого современного распространения LaTeX. Я попробовал совет DaveParillo , установленный с

aptitude install --without-recommends --prompt --safe-resolver auctex

На нем установлены auctex и emacs . Это не сработало. По-видимому, конфигурирование auctex должно быть сделано из исходного кода, поэтому единственным решением моего вышеупомянутого вопроса было бы забыть об aptitude (так что, опять же, DaveParillo был прав, я испортил aptitude) и собрать auctex из исходного кода. И, как вы, возможно, уже поняли, это огромный мяч, так как каждый раз, когда мне может понадобиться что-то, связанное с LaTeX, мне нужно будет собирать из исходников каждую и каждую программу, так что ... Отвечая на мой второй вопрос: нет, он не будет работать, если auctex не собран из источника с ./configure --funky-options-about-where-your-tex-installation-may-reside . Более того, расширение auctex исчезло из Emacs, когда я перезапустил.

Я удалил auctex с

sudo aptitude purge auctex

и я удалил TeXLive 2009 с помощью " tlmgr ", я установлю тот из репозиториев Ubuntu. И я справлюсь с этим в то же время. Я люблю aptitude способ обработки установок, но иногда это просто ... Argh. Отвечая на главный вопрос "Есть ли способ сказать aptitude вы уже что-то сделали вручную?": нет, в этом моем конкретном эксперименте, но я не знаю, возможно ли это с каким-нибудь опытным решением.

Извините за неудобства, ребята. Если бы это была среда тестирования, я бы попробовал все сделать вручную, даже если это означает переустановку ОС много раз. Но мне просто нужно было это поработать, и я не могу пойти с этим вариантом. Спасибо всем за ваше время и внимание.

0

Вы обошли нормальную систему зависимостей способностей, поэтому я думаю, что у вас могут быть проблемы. Самый простой, но, возможно, утомительный ответ - запустить aptitude с параметром --prompt - он будет спрашивать вас перед каждой установкой (или удалением), и вы сможете выбрать, какие пакеты устанавливать.

Поскольку этот вопрос касается взлома латекса, вы можете разместить его на бирже стека Tex - LaTex

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