Программа имеет следующий импорт:Тип несоответствия после обновления камеры
import Pipes.Network.TCP
import Pipes
import Pipes.Core
import qualified Data.ByteString.Char8 as C
Компиляция терпит неудачу так:
Couldn't match expected type `bytestring-0.9.2.1:Data.ByteString.Internal.ByteString'
with actual type `C.ByteString'
Expected type: Proxy
Int
bytestring-0.9.2.1:Data.ByteString.Internal.ByteString
()
b0
m0
()
Actual type: Proxy Int C.ByteString() C.ByteString IO()
я могу быть более конкретную информацию о коде, но, похоже, это не относится к коду - скорее какой-то междусобойчик каприз. Возможно, Pipes
, что я импортирую, считается другим ByteString
, чем тот, который импортирован с квалифицированным именем.
Программа, используемая для компиляции некоторое время назад (у меня есть ее рабочий исполняемый файл), но теперь она остановилась, и я подозреваю, что может быть какое-то обновление или установка пакета. Как отладить и исправить это?
Да, у вас есть две разные версии 'bytestring', и каждый из двух установленных вами пакетов зависит от другой версии. Вот почему cabal предупреждает вас, что «переустановки всегда опасны». В конце туннеля есть свет ([«no-reinstall cabal»] (http://blog.ezyang.com/2015/08/help-us-beta-test-no-reinstall-cabal/)), но вы можете захотеть уничтожить вашу песочницу или '.ghc' и повторите попытку. – dfeuer
Да, вы должны удалить «bytestring», который не пришел с вашим GHC, и все, что от него зависит. –