Erro: Executando compilador C/C++. -1

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
Vlademiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 752
Registrado em: 11 Jul 2005 02:46

Erro: Executando compilador C/C++. -1

Mensagem por Vlademiro »

Alguém sabe que erro é esse ?

Deu aqui em um programa cujos fontes eu gero automaticamente. São muitos arquivos.


Tentei postar o HBP mas o fórum recusou com a mensagem : Sua mensagem contém 96537 caracteres. O número máximo de caracteres permitidos é 60000.

Nem eu sabia que tinha tanto arquivo assim.

O Hbp aparentemente normal :

Código: Selecionar todos

#IniBlock=Libs
#Automatic=Yes
#Libs and directives
-m
-n
-inc
-L${SISTEMAS_PATH_TO_LIB}
-I${SISTEMAS_PATH_TO_INCLUDE}
-lvbase
-lvhttpd
-lvfile
-lfweb
hbhttpd.hbc
#EndBlockLibs

#IniBlock=FilesAddByDeveloper
#Automatic=Yes
index.prg
#EndBlockFilesAddByDeveloper

#IniBlock=FilesEmbedded
#Automatic=Yes
out\__browserslistrc.prg
...
Trem com 1846 arquivos. 
Segue as versões do harbour + gcc

Código: Selecionar todos

harbour --version
Harbour 3.2.0dev (r2006301601)
Copyright (c) 1999-2020, https://harbour.github.io/

 gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=C:/hrb/desenv/mingw/bin/../libexec/gcc/i686-w64-mingw32/5.3.0/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-5.3.0/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw530/i686-530-posix-dwarf-rt_v4-rev0/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=c,c++,fortran,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw530/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw530/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw530/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw530/prerequisites/i686-w64-mingw32-static --with-pkgversion='i686-posix-dwarf-rev0, Built by MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -I/c/mingw530/i686-530-posix-dwarf-rt_v4-rev0/mingw32/opt/include -I/c/mingw530/prerequisites/i686-zlib-static/include -I/c/mingw530/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw530/i686-530-posix-dwarf-rt_v4-rev0/mingw32/opt/include -I/c/mingw530/prerequisites/i686-zlib-static/include -I/c/mingw530/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw530/i686-530-posix-dwarf-rt_v4-rev0/mingw32/opt/lib -L/c/mingw530/prerequisites/i686-zlib-static/lib -L/c/mingw530/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 5.3.0 (i686-posix-dwarf-rev0, Built by MinGW-W64 project)
Alguma sugestão ?
Avatar do usuário
Vlademiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 752
Registrado em: 11 Jul 2005 02:46

Erro: Executando compilador C/C++. -1

Mensagem por Vlademiro »

Eu resolvi criando várias libs. Deu certo, aparentemente.

Alguém já usou o UPX ? Eu nunca precisei, mas acho que vou ter que usar agora.
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Erro: Executando compilador C/C++. -1

Mensagem por Kapiaba »

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Erro: Executando compilador C/C++. -1

Mensagem por JoséQuintas »

O erro -1 é quando não encontra o compilador C.

Como adicional no hbmk2 pode usar o -q pra não mostrar tudo que é mensagem.
E o -trace pra mostrar cada comando.

O nome do EXE é o primeiro nome da linha.

procure e coloque no path.

dir \nomearquivo.exe /s/b

set PATH=%PATH%;nome do path mostrado no comando anterior

Quanto ao UPX, sempre usei.
Dependendo da versão do Harbour e compilador C, acrescente -strip pra limpar informações de debug do compilador C.
Isto também deixa o EXE menor, conforme o compilador C.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Vlademiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 752
Registrado em: 11 Jul 2005 02:46

Erro: Executando compilador C/C++. -1

Mensagem por Vlademiro »

Obrigado Kapiaba.

Quintas, valeu.

Eu compilei sistemas menores e não dá problema. Quando gerei um hbp com muitos arquivos começou o erro -1. Talvez gerasse uma linha gigante na hora de chamar o gcc. Não sei... Só resolvi compilando com uma quantidade menor. Gerei libs. Foram lotes de 300 arquivos por hbp. Pode ser falta de memória na máquina.
Responder