2

Я хочу установить файл libgmp-dev на свой Debian Wheezy. Какой репозиторий я должен добавить в мой sources.list?

В общем, как найти в каком репозитории данный пакет / программу доступен? Или это вообще не доступно для Debian? В последнем случае я должен установить его из источника. Но я хотел бы установить, если один доступен из репо.

Другими словами, думаю, я хочу знать: как мне узнать, какие репозитории добавить в мой sources.list для выполнения требований по установке моего пакета?

Я уже видел следующий вопрос и его ответы, но кажется, что они работают только на локальном кэше. Как узнать, из какого Ubuntu или Debian репозитория приходит пакет?

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

$ apt-cache policy libgmp-dev $ apt-cache show-pkg libgmp-dev

Я всегда получаю сообщение об ошибке: N: Unable to locate package libgmp-dev

2 ответа2

1

Это просто означает, что APT не считает, что пакет с именем, точно совпадающим с тем , которое вы ввели, доступен в любом хранилище, о котором знает ваш локальный APT.

Что это значит? Одна из этих двух вещей:

  • Пакет, который вы хотите найти, имеет другое имя;
  • Репозиторий пакета с таким точным именем не известен APT.

Что вы можете сделать по этому поводу?

Сначала попробуйте найти в кэше пакетов (список всех пакетов из репозиториев, известных APT в вашей системе) менее точное имя, например

apt-cache search libgmp

или даже

apt-cache search gmp

может сделать свое дело (вы можете направить вывод на less чтобы иметь возможность искать дальше через него). Например, пакет может включать в себя версию, такую как libgmp4-dev (то есть может быть libgmp3-dev или что-то в этом роде).

Затем убедитесь, что APT знает о хранилище, содержащем этот пакет.

В моей системе Wheezy у меня есть:

$ apt-cache search libgmp-dev
libgmp-dev - Multiprecision arithmetic library developers tools
libgmp3-dev - Multiprecision arithmetic library developers tools

а также

$ apt-cache policy libgmp-dev
libgmp-dev:
  Installed: (none)
  Candidate: 2:5.0.5+dfsg-2
  Version table:
     2:5.0.5+dfsg-2 0
        500 http://http.debian.net/debian/ wheezy/main amd64 Packages

Это означает, что пакет доступен в стандартном (основном) репозитории Debian.

Итак ... убедитесь, что у вас есть этот репозиторий:

  1. Найдите файл /etc/apt/sources.list .
  2. Попробуйте найти там строку без комментария (без префикса с символом # ), читающую как

    deb http://ftp.de.debian.org/debian wheezy main
    

    и если у вас его нет, попробуйте добавить

    deb http://http.debian.net/debian wheezy main
    

    там, сохраняя файл.

  3. Бежать

    # apt-get update
    

    получить список пакетов из этого хранилища и добавить список доступных пакетов из него в локальный кэш APT.

  4. Убедитесь, что пакет стал доступен с помощью

    $ apt-cache policy libgmp-dev
    
0

Чтобы узнать, в каком хранилище находится пакет, перейдите сюда:
https://www.debian.org/distrib/packages

На этой странице вы можете искать имена пакетов или вводить имена файлов и получать набор результатов с именами всех пакетов, содержащих искомый файл.

Что касается вашего примера

libgmp-dev - это пакет из обычных репозиториев Debian, смотрите здесь

Если у вас есть работающая система Debian, вы можете установить ее, используя apt-get install libgmp-dev . Если у вас есть проблемы с этим, пожалуйста, откройте новый вопрос.

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