Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[Bug] Windows build fails with Clang/MSVC due to missing #include <chrono>

Aberta
#492 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

  • #494 de @Jah-yee — fechado sem integrar

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
58/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Estagnada
Stack de tecnologia
cmake, cpp

Direção de pesquisa

Comece pelos quatro arquivos listados em 3rdparty/llama.cpp/common e examples e, em seguida, inspecione src/ggml-bitnet-mad.cpp por volta da linha 811. Reproduza o build do CMake com clang-cl no Windows e verifique se os headers chrono ausentes e o erro de const pointer foram resolvidos sem introduzir outros erros do compilador.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Summary

Building on Windows with ClangCL fails due to missing #include header and const pointer type mismatch in bitnet-mad.cpp.

Steps to Reproduce

  1. Clone the repository on Windows 11
  2. Install Clang 19 via Visual Studio 2022 Build Tools + clang-cl
  3. Run CMake configuration and build
  4. Observe compilation errors

Expected Behavior

Code should compile on Windows with ClangCL without errors

Actual Behavior

Two compilation errors occur:

Error 1: Missing #include

The following files use std::chrono without explicitly including :

  • 3rdparty/llama.cpp/common/common.cpp
  • 3rdparty/llama.cpp/common/log.cpp
  • 3rdparty/llama.cpp/examples/imatrix/imatrix.cpp
  • 3rdparty/llama.cpp/examples/perplexity/perplexity.cpp

On Linux/GCC, is pulled in implicitly, but Clang on Windows is stricter.

Error 2: Const pointer mismatch (src/ggml-bitnet-mad.cpp line 811)

error: cannot initialize a variable of type 'int8_t *' with an rvalue of type 'const int8_t *'

Root Cause Analysis

The root cause is platform-specific header dependency and type constness:

  1. Header Issue: GCC on Linux transitively includes through other headers, but Clang/MSVC on Windows does not
  2. Type Issue: The code at line 811 declares int8_t * but receives a const int8_t *, which should be const int8_t *

Proposed Solution

  1. Add #include <chrono> to the four affected files
  2. Change line 811 from int8_t * to const int8_t *

Environment

  • OS: Windows 11
  • Compiler: Clang 19 (via Visual Studio 2022 Build Tools + clang-cl)
  • CMake: 3.x
Linguagem predominante
C++
Estrelas
40.6k
Forks
3.8k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/BitNet

Todas as issues de microsoft/BitNet

Issues semelhantes

Mais issues de C++

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.