Clipper On Line • Ver Tópico - Compilar/linqueditar

Compilar/linqueditar

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

 

Compilar/linqueditar

Mensagempor JoséQuintas » 25 Abr 2019 08:23

Ainda tem gente com dificuldade nisso.

O problema é relativamente simples:
É que o programador acaba fazendo igual usuário, fica preocupado com os detalhes, e não com o funcionamento.

Compilação Clipper:

Compila PRG, que era OBJ

Linquedição Clipper:

a) pra gerar LIB: junta OBJ pra gerar LIB
b) pra gerar EXE: junta OBJ e LIB pra gerar EXE

Neste ponto, se faltar alguma coisa, o linqueditor vai mostrar a lista do que falta.
E aonde pode estar o que falta? ou num PRG que não foi compilado, ou num OBJ que não foi linqueditado, ou numa LIB que não foi linqueditada.
Também pode ser nome errado, por isso não acha o nome.

E no Harbour? Mesma coisa, exceto que:

- PRG é transformado em C primeiro, e depois compilado pra gerar o OBJ - até esquecemos que isso é feito porque o fonte C acaba sendo um temporário
- pode usar .C, que também é compilado pra gerar o OBJ
- Dependendo do compilador/linquedior, a extensão é diferente. O "OBJ" pode ter final ".o" ao invés de ".obj", e a lib final ".a" ao invés de ".lib"
- Também podem ser compilados resources (imagens,etc), que geram um OBJ

E se usar LIB externa?

Mesma coisa. Como já foi dito, a LIB é um conjunto de OBJs. Se faltar alguma coisa vai mostrar no final da linquedição.

De adicional, podemos usar declarações no fonte: #define K_ESC 27
Mas para teclado, já temos um arquivo preparado com tudo que é importante do teclado, seria o arquivo INKEY.CH, e basta colocar no fonte #include "inkey.ch".
Se faltar indicar o .CH, K_ESC seria considerado ser uma variável, poderia gerar erro em run-time de falta de variável, ou o mesmo na compilação se usar -w3 -es2

É isso que alguns programadores esquecem.
Se é minigui, hwgui, gtwvg, nenhuma gui, tanto faz.
A linquedição sempre vai procurar em tudo que foi indicado, vai juntar obj e lib, e vai mostrar o nome do que falta.
Com base no nome do que faltar, é o que vamos procurar prg, c, obj, lib, ch, etc.

É o mesmo até pra gerar o Harbour.
Não tá compilando? deve faltar o Harbour.exe ou o compilador C, ou o compilador de resource, ou no disco ou apenas no PATH
Não tá linqueditando? deve faltar o EXE do linqueditor, ou alguma lib ou algum obj, ou no disco ou no PATH

Os detalhes?
O detalhe é preso a cada uso de cada usuário.
Se faltar o compilador C: pra quem usa Borland é BCC/EXE, pra quem usa Msvc é CL.EXE, pra quem usa mingw é GCC.EXE
Isso nem precisa decorar: vai ser olhar o comando que o HBMK2 executa, e lá vai estar indicado o nome do EXE.

Imaginem o usuário anotar que precisa usar a opção 3, e se mudar o número pra 4 o usuário não saber mais.
É a mesma diferença se o programador ficar preso a nomes, ao invés de como funciona.
Basta o programador procurar o nome, mas como o programador costuma decorar nomes, só porque mudou o nome ele não sabe mais fazer...
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18009
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Compilar/linqueditar

Mensagempor JoséQuintas » 25 Abr 2019 08:33

E se usar uma IDE?

É tudo igual, a diferença é que na IDE não dá pra enxergar os comandos, mas é tudo igual.
Só que na IDE, é ela quem executa os comandos, e pode depender de configuração pra funcionar.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18009
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes




Retornar para Contribuições, Dicas e Tutoriais

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 19 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro