Ich habe mich entschieden zu versuchen, Stack einen Schuss zu geben. Ich habe es installiert und verwendet, um die neueste Version von Ghc zu installieren. Ich habe Stapel verwendet, um einige Pakete zu installieren, aber die Pakete sind für ghc nicht sichtbar, und wenn ich Pakete mit ghc-pkg aufliste, sehe ich, dass die Pakete, die ich über Stapel installiert habe, nicht da sind. Warum ist das? Missverstehe ich den Zweck des Stapels?Warum werden Pakete nicht zur ghc-Paketdatenbank hinzugefügt?
5
A
Antwort
7
Stack berührt niemals die globale Paketdatenbank. Es verwendet geschichteten Datenbank Ansatz
- globale Datenbank - unberührt
- Pakete im stackage Snapshot in Snapshot-Datenbank installiert werden
- andere Pakete werden vor Ort pro Projekt
So anstelle von umweltschädlichen globale Datenbank installiert Die meisten Pakete werden in Snapshot-Datenbanken installiert, sodass die meisten Pakete gemeinsam genutzt werden können. Da Pakete in Stack-Snapshots kompatibel sind (d. H. Immer zusammen kompilieren), stoßen wir nicht auf Cabal hell.
Sie können stack ghci
oder stack ghc
verwenden, um entsprechende Befehle mit konfigurierter Paketdatenbank auszuführen.
Die genauere Erklärung ist in der stack wiki
Verwandte Themen
- 1. Kann nicht zur Liste hinzugefügt werden
- 2. Kartenmarkierungen werden nicht zur Karte hinzugefügt
- 3. Schaltflächen können nicht zur Tabellenansichts-Symbolleiste hinzugefügt werden
- 4. Sollten Javadoc-Kommentare zur Implementierung hinzugefügt werden?
- 5. Anhang kann nicht ordnungsgemäß hinzugefügt werden - Teile der Header werden zur Datei hinzugefügt
- 6. Ansicht nicht zur Anwendung hinzugefügt
- 7. Wie Stored Procedures zur Versionssteuerung hinzugefügt werden
- 8. Warum wird der Wert des Datums nicht zur Datenbank hinzugefügt?
- 9. DELPHI XE2 DLL kann nicht zur C# -Anwendung hinzugefügt werden
- 10. Warum werden keine Erlang-Pakete verwendet?
- 11. Warum werden diese Pakete als "schmutzig" markiert?
- 12. Visual Studio: Kann nicht zur Website hinzugefügt werden ... Datei kann nicht hinzugefügt werden ... Zugriff verweigert Fehler 550
- 13. Entität wird nicht zur Azure-Tabelle hinzugefügt, aber Zeilenschlüssel und Partitionsschlüssel werden korrekt hinzugefügt.
- 14. R-Pakete können nicht installiert werden
- 15. kann nicht hinzugefügt werden particles.js
- 16. Skripte (iFrames und Javascript) zur Website hinzugefügt werden
- 17. Ajax/JS - Wird nicht zur DB hinzugefügt
- 18. kann nicht hinzugefügt werdenRange() zur Listenansicht xamarin.android
- 19. Modul-Pakete nicht zur Kompilierzeit in IntelliJ gefunden
- 20. gitignore Ausnahmen Nicht-Tracking hinzugefügt werden
- 21. scala collection.Map kann nicht hinzugefügt werden
- 22. Wie Einheiten zur uses-Klausel der aktuellen Einheit hinzugefügt werden
- 23. PHP-Sitzungsvariable, die zur URL hinzugefügt werden soll (und umgekehrt)
- 24. Kann ein Einstellungsbildschirm zur App "Einstellungen" hinzugefügt werden?
- 25. WebTestPlugin kann nicht zu .Webtest hinzugefügt werden
- 26. Warum SetTimeout Ausgänge Zahlen nicht hinzugefügt, um
- 27. Highchart: wie Kommata zur Ausgabe an Intergers hinzugefügt werden
- 28. Können zusätzliche Felder zur @ManyToMany-Hibernate-Zusatztabelle hinzugefügt werden?
- 29. WF 4.5: Können Variablen zur Laufzeit dynamisch hinzugefügt werden?
- 30. Pakete können nicht mit Ansible installiert werden