Как может версия конфликта пакета с собой?

Короче говоря: Просто создайте пакет, и это будет последняя версия от мерзавца repo; это автоматически обрабатывается makepkg.

От чтения PKGBUILD файлы -git пакеты (например, для adonthell-мерзавца), Вы видите:

cd $_gitname && git pull origin
msg "The local files are updated."

Таким образом, каждый раз makepkg работал, это загружает последнюю версию с репозитория мерзавца.

pkgver параметр то, потому что makepkg требует номера версии в PKGBUILD и в заключительном пакете; дата - то, что имеет большую часть смысла здесь.

Если это обнаруживается, что это - пакет от мерзавца, makepkg обрабатывает особый случай соответственно:

(строки 1687-1771 makepkg, функция devel_check)

elif [[ -n ${_gitroot} && -n ${_gitname} ]] ; then
    if ! type -p git >/dev/null; then
            warning "$(gettext "Cannot find the %s binary required to determine latest %s revision.")" "git" "git"
            return 0
        fi
        msg "$(gettext "Determining latest %s revision...")" 'git'
        newpkgver=$(date +%Y%m%d)

[отрезанный много других случаев для darcs, hg, svn и т.д....]

(строки 1773-1792 makepkg, функция devel_update)

# This is lame, but if we're wanting to use an updated pkgver for
# retrieving svn/cvs/etc sources, we'll update the PKGBUILD with
# the new pkgver and then re-source it. This is the most robust
# method for dealing with PKGBUILDs that use, e.g.:

следовательно Вы заканчиваете с пакетом с его номером версии, являющимся датой при создании ее.

4
13.05.2013, 14:28
2 ответа

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

rpm по умолчанию не установит пакет, если какой-либо файл, который он должен установить уже, будет существовать в файловой системе. Так, если предыдущая прерванная установка и некоторые файлы была оставлена позади, вся последовательная попытка перестанет работать. Сообщение об ошибке довольно сбивает с толку потому что rpm попытается узнать, которые упаковывают проблематичный файл, принадлежит и в этом случае, это - тот же самый пакет, который это пытается установить. --force опция говорит rpm чтобы не заботиться и стереться, что это должно выполнить операцию (вот почему это может быть опасно, но если никакой другой пакет не требует файла, это безопасно).

9
27.01.2020, 20:49
  • 1
    я столкнулся с этим с недавно с yum. Для разрешения я использовал yumdownloader для загрузки об/мин установите его через rpm -ivh --force package.rpm, удаленный это с rpm -e package, и затем пошел о моем первоначально предназначенном yum install.Спасибо! –  Alan Ivey 15.05.2015, 21:38

Я частично решил это, я имею в виду, по крайней мере, "что может делаться с этим" первая часть, работал:

rpm -i --force fillup-1.42-268.1.x86_64.rpm 

и это работает теперь, но все еще не знайте, почему то сообщение об ошибке произошло.

0
27.01.2020, 20:49
  • 1
    Вы уже попытались установить его и прервали установку? Похож на некоторые файлы, были оставлены позади и rpm по умолчанию не установит пакет, если какой-либо файл, который он должен установить уже, будет существовать в файловой системе. --force опция говорит rpm не заботиться и стереть то, что это должно выполнить операцию (вот почему это может быть опасно). –  lgeorget 13.05.2013, 15:51

Теги

Похожие вопросы