2016-07-10 17 views
2

Ich habe das gleiche Problem wie dieses question. Beide Antworten basieren jedoch auf dem Modul Text.Regex.Posix. Wenn ich versuche, es zu importieren, erhalte ichWurde 'Text.Regex.Posix' umbenannt oder ersetzt?

<no location info>: 
    Could not find module ‘Text.Regex.Posix’ 
    Perhaps you meant 
     Text.Regex.Base (from [email protected]) 
     Text.Regex.PCRE (from [email protected]) 

Ich habe versucht die Installation regex-posix wie in diesem answer vorgeschlagen, aber das Modul noch nicht gefunden werden kann. Also habe ich mich gefragt, ob die Funktionalität von Text.Regex.Posix zu den vorgeschlagenen Modulen Text.Regex.Base und Text.Regex.PCRE verschoben wurde. Meine GHCi-Version ist 7.10.3.

Ich bin ein Anfänger in Haskell, also könnte ich etwas Triviales vermissen.

+0

Sie haben 'regex-posix' installiert und Sie haben überprüft, ob Sie es für den von Ihnen verwendeten Compiler installiert haben? Es ist mir passiert, dass ich einen 'ghc' aus der OS-Distribution habe und einen manuell installiert habe und Dinge bei der Installation von Paketen mische ... – Bakuriu

+0

Hast du ghci nach der Installation von 'regex-posix' tatsächlich neu gestartet? – leftaroundabout

+0

@Bakuriu, wie kann ich es überprüfen? Ich habe überprüft, dass sowohl ghci als auch ghc dieselbe Version haben. – dimid

Antwort

2

Wenn Sie ein Paket installieren, stellen Sie sicher, dass Sie es an dem entsprechenden Speicherort (global oder in einer Sandbox) installieren. Wenn cabal eine Sandbox erkennt, wird das Paket dort automatisch installiert (und es sollte etwas von "detected sandbox at path/to/sandbox" angezeigt werden.)

Sie können immer überprüfen, welche Pakete im globalen Paket installiert sind Paket-Index durch Ausführen ghc-pkg list, oder wenn Cabal eine Sandbox verwendet, dann cabal sandbox hc-pkg list.

Sobald Sie herausgefunden haben, welcher Paket-Index cabal verwendet, um ein bestimmtes Programm zu kompilieren, können Sie in der Hackage-Dokumentation überprüfen, ob die gewünschte Funktionalität in der von Ihnen installierten Version vorhanden ist.