Partilhar via


Erro de linha de comando D8049

não é possível executar 'compiler-component': a linha de comando é muito longa para caber no registro de depuração

Observações

Foi excedido um limite de comprimento interno nos caminhos dos registros de depuração.

Quando o compilador cria registros de depuração em um arquivo de objeto, ele usa o caminho completo para cada arquivo incluído. Os caminhos absolutos são registrados conforme especificado. Para caminhos de inclusão relativos, o registo de depuração acrescenta o diretório de trabalho atual da compilação ao caminho relativo. Se sua compilação for executada em um caminho relativamente profundo, os registros de caminho correspondentes ficarão mais longos. O comprimento total de muitos caminhos longos pode exceder os limites internos do compilador.

Para resolver este problema

  • Use caminhos mais curtos para seus diretórios de inclusão e compilação. Instale sua biblioteca, inclua cabeçalhos em diretórios com caminhos mais curtos e use caminhos curtos para os diretórios de compilação intermediários e de destino de seus projetos. SE estabeleces alias para os caminhos, usa alias curtos. Definir %TMP% e %TEMP% para diretórios que têm caminhos mais curtos.

  • Otimize seus arquivos de inclusão para o conjunto mínimo necessário para qualquer arquivo de origem. Este método também tem a vantagem de acelerar os tempos de compilação. Se você usar cabeçalhos pré-compilados, é importante otimizar o conjunto de cabeçalhos incluídos no arquivo de cabeçalho pré-compilado. Em soluções complexas, pode valer a pena criar diferentes cabeçalhos pré-compilados otimizados para diferentes partes do seu projeto. Se seu código usa C++20, recomendamos que você use módulos ou módulos de cabeçalho em vez de cabeçalhos pré-compilados.