Skip to content

Latest commit

 

History

History
61 lines (35 loc) · 3.28 KB

agda_install_instructions.md

File metadata and controls

61 lines (35 loc) · 3.28 KB

Подготовка за работа с Agda

За инсталиране на самата Agda имате няколко варианта, сортирани от лесно към трудно:

  • използване на системен пакет

    Това е най-лесният вариант, стига пакетът да е достатъчно нов. Би трябвало >=2.6.0 да свърши работа

  • инсталиране чрез nix

    nix е "пакетен мениджър" (както и много други неща), в които хранилища има Agda. По-долу има инструкции за инсталация чрез nix

  • компилиране от source

    Има инструкции за това по-долу. Инструкциите са на 3-4 години, така че ако нещо не работи, моля свържете се с Георги за да ги оправим.

Инсталация чрез nix

  1. Инсталираме си nix

    Препоръчвам да използвате Determinate Nix Installer, защото в този момент сякаш се справя по-добре от официалният installer.

  2. Инсталираме в "nix профила" си agda

    nix profile install nixpkgs#agda

  3. Проверяваме дали в PATH имаме agda, като отворим шел и в него пуснем agda

    Забележете че може да се наложи да отворим нов шел, защото шелът в който сте изпълнили стъпка 1. може да няма правилният PATH който включва нещата инсталирани в nix профила ни.

Компилиране от source

  1. Инсталираме си ghc + cabal

    Това става най-лесно чрез ghcup.

  2. Обновяваме индексът от пакети на cabal

    > cabal update
    
  3. Инсталираме си alex и happy

    Това са програми изпълняващи същите роли като съответно lex и yacc.

    За да ги инталираме е достатъчно да изпълним cabal install alex happy.

    След това е хубаво да проверим дали ги има в PATH като се опитаме да ги извикаме.

    Най-вероятно ги нямаме - би трябвало да са инсталирани в ~/.cabal/bin, така че може да трябва да добавим този път на края на PATH-а ни.

    Попринцип cabal си казва къде се намират след като ги компилира.

  4. Инсталираме си agda

    cabal install Agda - забележете че е с главна буква. Това ще отнеме малко време - идете да пиете кафе.

    Отново, тук важи същия коментар за PATH както при alex и happy, тъй като пак инсталираме с `cabal.