Рейтинг:1

Не удается восстановить поврежденный компилятор на Kubuntu 20.04

флаг br

Я использую FreePascalCompiler (FPC) версии 3.0.4 на уровне командной строки под Kubuntu 20.04.2 LTS и в итоге сам его испортил. Теперь я не могу сделать чистую переустановку FPC. Я предполагаю, что проблема связана с Ubuntu, поэтому я задаю свой вопрос здесь.

Вот что я сделал: я хотел использовать в моей крошечной программе специальную функцию, которая доступна только при включенном модуле LConvEncoding. Компилятор выдал сообщение о фатальной ошибке: Модуль не найден. Долгие поиски по разным форумам привели меня к двум выводам:

  1. Этот блок должен присутствовать, если FPC 3.0.4 установлен корректно.
  2. Я должен проверить символические ссылки, которые запускают FPC, потому что в Ubuntu пути другие.

какой фпс выдает этот вывод: /usr/bin/fpc. Это символическая ссылка на /etc/альтернативы/fpc, снова символическая ссылка на /usr/bin/x86_64-линукс-гну-fpc-3.0.4. Это исполняемый файл, который пытается запустить /usr/lib/x86_64-linux-gnu/fpc/3.0.4/ppcx64. ppx64 является фактическим компилятором для моей 64-битной системы Mac.

Так /usr/lib/x86_64-linux-gnu/fpc/3.0.4/единицы/ был каталог, где искать нужный блок. Ед. изм LConvEncoding к сожалению не присутствовал. Это заставило меня подумать, что моя установка FPC была неполной. Поэтому я удалил его с помощью sudo apt-получить чистку fpc. А потом переустановил. Это буквально ничего не изменило.

Теперь, чтобы убедиться, что каталог /usr/lib/x86_64-linux-gnu/fpc/3.0.4/ действительно переписано, я вручную удалил /usr/lib/x86_64-linux-gnu/fpc. Нет хорошей идеи, насколько я знаю.Следующий процесс установки прошел без сообщений об ошибках, но каталог не перезаписался - его все равно нет. Так что у меня больше нет существующего компилятора Pascal. Каждый вызов компилятора теперь выдает это сообщение об ошибке: Ошибка: ppcx64 не может быть выполнен, сообщение об ошибке: Не удалось выполнить "ppcx64", код ошибки: 127.

Я предполагаю, что конкретный пакет deb для FPC 3.0.4 в Ubuntu 20.04 содержит ошибочный деинсталлятор, который не очищает все соответствующие файлы. И именно поэтому инсталлятор прерывает установку без сообщения об ошибке, так как он встречает уже существующие файлы нужной версии программы и, следовательно, предполагает, что работа уже сделана.

Если это предположение не ерунда, то возникает вопрос: какие файлы я должен удалить, чтобы сделать sudo apt-get установить fpc снова сделать полную работу?

Или я все неправильно понял?

Аппаратное обеспечение: Mac Mini (6.2, выпущенный в 2012 г., с 4 процессорами Intel Core i5-2415M @ 2,30 ГГц)

Система: только Kubuntu 20.04.2 LTS. Никакая другая операционная система не установлена.

Рейтинг:1
флаг zw

Сначала вы не должны удалять или переименовывать какие-либо файлы, которые контролируются APT (и обновление-альтернативы в результате).

Переустановить пакеты ФПК вы выполнили следующую команду:

sudo apt-get install --reinstall fpc fpc-3.0.4 fp-compiler fp-compiler-3.0.4 fpc-source fpc-source-3.0.4 fp-docs fp-docs-3.0.4 fp-ide fp-ide -3.0.4 fp-units-base fp-units-base-3.0.4 fp-units-db fp-units-db-3.0.4 fp-units-fcl fp-units-fcl-3.0.4 fp-units- FV FP-единицы-FV-3.0.4 FP-единицы-GFX FP-единицы-GFX-3.0.4 FP-единицы-GTK2 FP-единицы-GTK2-3.0.4 FP-единицы-математика FP-единицы-математика-3.0 .4 fp-units-misc fp-units-misc-3.0.4 fp-units-multimedia fp-units-multimedia-3.0.4 fp-units-net fp-units-net-3.0.4 fp-units-rtl fp -units-rtl-3.0.4 fp-utils fp-utils-3.0.4

а для их 32-битных вариантов используйте команды ниже

sudo dpkg --добавить-архитектура i386
sudo apt-получить обновление
sudo apt-get install --reinstall fp-units-i386 fp-units-i386-3.0.4

тогда все структуры папок будут исправлены.

Ответить или комментировать

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