У меня есть система Linux, где я разрабатываю код Haskell, и я придумал с программой Haskell, которую я хочу перенести на Windows. Все, что я могу сделать с последним, это буквально скопировать исполняемый файл и запустить его; Я не могу на него ничего установить.
Это программа для терминала, в которой я использую немного System.Console.ANSI для раскраски текста, очистки экрана и т. д. и так далее. Там я прочитал «независимость от платформы», поэтому я с оптимизмом смотрю на портирование его на Windows (но, тем не менее, я заинтересован в кросс-компиляции просто небольшого примера «Привет, мир»).
Я управляю своей средой Haskell с помощью GHCup. Я использую Cabal, а не Stack.
Я просмотрел эту страницу о кросс-компиляции, и это заставляет меня думать, что ответ может быть нет или, по крайней мере, не совсем просто следующие.
Это единственное место на странице, где упоминается Windows:
< blockquote>
- Кросс-билдинг обычного компилятора: создайте на одной платформе компилятор, который будет работать на другой платформе. Примеры:
TakeoffGW — это дистрибутив инструментов Unix для Windows, созданный путем кросс-компиляции на машине Linux. Они хотели бы иметь возможность создавать и распространять GHC таким образом. Нам также может быть полезно иметь возможность кросс-компиляции GHC для Windows из Linux. - создайте 64-битный GHC в OS X путем кросс-компиляции с использованием 32-битной версии. версию.
- Мы могли бы перенести на Win64 (#1884 (закрыто)) путем кросс-компиляции с использованием 32-битной Windows GHC.
- Другое портирование задачи могут быть проще при наличии подходящего инструментария кросс-компиляции.
а этот, где упоминается только Linux,
Еще цели работают в разных направлениях. Некоторые примечательные из них:
- x86_64-linux -> aarch64-linux (64-битная LE -> 64-битная LE)
- x86_64-linux ->armv7a-linux (64-битная LE -> 32-битная LE)
- x86_64-linux -> m68k-linux (64-битная LE -> 32) -бит BE)
- i386-linux -> powerpc64-linux (32-бит LE -> 64-бит BE)
Подробнее здесь: https://stackoverflow.com/questions/787 ... et-windows
Мобильная версия