Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Installation (`stack install` after `git clone`) failure under Windows 10

Abierto
#651 5 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
haskell
Área
build-system

Línea de trabajo

Reproduce el fallo en Windows 10 usando los comandos documentados git clone, pushd y stack install, y luego compara la salida de MINGW64, Cygwin y CMD. Empieza con src\Network\Socket\SendFile\Win32.hsc y los errores de cmark-gfm cbits\tasklist.c, e inspecciona los límites de sendfile indicados. Se considera terminado cuando la instalación documentada se completa correctamente en Windows.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

I'm following the suggested installation instructions, under Windows 10, by entering the following commands at a Git MINGW64 terminal prompt:

  • git clone https://github.com/jgm/gitit
  • pushd gitit
  • stack install

and getting this:

{snip}
Cabal                            > [219 of 220] Compiling Distribution.Simple.Doctest
Cabal                            > [220 of 220] Compiling Distribution.Simple
Cabal                            > copy/register
Cabal                            > Installing library in C:\sr\snapshots\67f8afe8\lib\x86_64-windows-ghc-8.6.5\Cabal-2.4.1.0-5rQrtDcYhR2LOcYye7obEr
Cabal                            > Registering library for Cabal-2.4.1.0..

--  While building package sendfile-0.7.11.1 using:
      C:\sr\setup-exe-cache\x86_64-windows\Cabal-simple_Z6RU0evB_2.4.0.1_ghc-8.6.5.exe --builddir=.stack-work\dist\e626a42b build --ghc-options " -fdiagnostics-color=always"
    Process exited with code: ExitFailure 1
Progress 75/157

I tried running the stack install command in a Cygwin command shell, instead, and got:

{snip}
attoparsec          > [20 of 21] Compiling Data.Attoparsec.Char8
attoparsec          > [21 of 21] Compiling Data.Attoparsec
attoparsec          > copy/register
attoparsec          > Installing library in C:\sr\snapshots\67f8afe8\lib\x86_64-windows-ghc-8.6.5\attoparsec-0.13.2.3-GA
4ycFABWuC8tgunM2kJRL
attoparsec          > Registering library for attoparsec-0.13.2.3..

--  While building package sendfile-0.7.11.1 using:
      C:\sr\setup-exe-cache\x86_64-windows\Cabal-simple_Z6RU0evB_2.4.0.1_ghc-8.6.5.exe --builddir=.stack-work\dist\e626a
42b build --ghc-options " -fdiagnostics-color=always"
    Process exited with code: ExitFailure 1
Progress 13/83

Attempting the stack install command from a Windows command prompt yields a similar result.

Scanning all 3 transcripts for errors (They all produce many warnings.) yields:

MINGW64:

cmark-gfm                        > cbits\tasklist.c:17:17: error:
cmark-gfm                        >    |
cmark-gfm                        > 17 |   if (!node || ((int)node->as.opaque != CMARK_TASKLIST_CHECKED && (int)node->as.opaque != CMARK_TASKLIST_NOCHECKED))
cmark-gfm                        >    |                 ^
cmark-gfm                        > cbits\tasklist.c:17:67: error:
cmark-gfm                        >    |
cmark-gfm                        > 17 |   if (!node || ((int)node->as.opaque != CMARK_TASKLIST_CHECKED && (int)node->as.opaque != CMARK_TASKLIST_NOCHECKED))
cmark-gfm                        >    |                                                                   ^

{Omitted 2 more like the above, from the same file.}

sendfile                         > src\Network\Socket\SendFile\Win32.hsc:103:1: error:
sendfile                         >     |
sendfile                         > 103 | foreign import ccall unsafe "io.h _get_osfhandle"
sendfile                         >     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

Cygwin:

(Contains only the last error reported above.)

CMD:

Same as above, but with additional diagnostic information:

sendfile            > src\Network\Socket\SendFile\Win32.hsc:103:1: error:
sendfile            >     * Unacceptable result type in foreign declaration:
sendfile            >         `IntPtr' cannot be marshalled in a foreign call
sendfile            >           because its data constructor is not in scope
sendfile            >           Possible fix: import the data constructor to bring it into scope
sendfile            >     * When checking declaration:
sendfile            >         foreign import ccall unsafe "io.h _get_osfhandle" c_get_osfhandle
sendfile            >           :: Fd -> IO IntPtr
sendfile            >     |
sendfile            > 103 | foreign import ccall unsafe "io.h _get_osfhandle"
sendfile            >     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

Oh, I just noticed this, at the very start of my console output:

WARNING: Ignoring sendfile's bounds on Win32 (>=2.2.0.0 && <2.3); using Win32-2.6.1.0.
Reason: allow-newer enabled.
Lenguaje dominante
Haskell
Estrellas
2.3k
Forks
231
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de jgm/gitit

Todos los issues de jgm/gitit

Issues similares

Más issues de Haskell

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.