Problemas na compilação de código c++ no netbeans 6.5  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
laudenpower
JavaEvangelist
[Avatar]

Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline

Bom dia a todos,

Estou tentando instalar o c++ no netbeans 6.5 e para isso estou usando o cygwin.
Ele instala corretamente, e no netbeans eu consigo apontar as configuração de compilador e tudo mais. Porém quando ele pede o arquivo make eu não consigo selecionar um que não de erro.
O erro que recebo quando tento compilar o projeto é:



Estou precisando usar o netbeans por que não quero perder tempo aprendendo a utilizar outra ide, nesse caso quero apenas estudar a linguagem, inclusive eu preciso apenas acessar portas seriais de forma nativa para saber se a performance é superior ao de outras linguagens como visual basic ou delphi.

Gostaria de saber se quando eu instalo o cygwin além dele eu preciso instalar o make separado, pois eu baixei o make 3.82 da pagina dele e não deu do mesmo jeito.
A versão do cygwin que estou usando é a 1.5.5.

Desde já agradeço a antenção e aguardo o retorno

Enquanto cultivares teu saber, nada tens a temer!

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
luxu
GUJ Ranger
[Avatar]

Membro desde: 28/10/2008 18:23:12
Mensagens: 881
Localização: Presidente Prudente/SP
Offline

kra usa o CodeBlocks, pq no netbeans dá muito trabalho msm configurá-lo...no CodeBlocks já vem td pronto!



zicadopv.wordpress.com
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Concordo com o luxu.

Se você vai fazer uma aplicação Windows, use o Visual C++ Express:
http://www.microsoft.com/express/Windows/

É, de longe, a melhor IDE de C++ hoje em dia. Ótimo depurador, ótimo code completion, excelente suporte a macros e condicionais, excelente implementação da STL (inclusive uma versão em modo debug).


Se for multiplataforma, use o Code::Blocks:
http://www.codeblocks.org/


Você não tenta martelar um prego na parede com uma chave de fenda, só porque quer se concentrar apenas em bater no prego, e não aprender a usar um martelo!

This message was edited 1 time. Last update was at 29/11/2010 09:22:27


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
yoshikichi
JavaEvangelist
[Avatar]

Membro desde: 25/07/2008 22:43:59
Mensagens: 335
Localização: São Paulo
Offline

laudenpower wrote:Bom dia a todos,

Estou tentando instalar o c++ no netbeans 6.5 e para isso estou usando o cygwin.
Ele instala corretamente, e no netbeans eu consigo apontar as configuração de compilador e tudo mais. Porém quando ele pede o arquivo make eu não consigo selecionar um que não de erro.
O erro que recebo quando tento compilar o projeto é:



Estou precisando usar o netbeans por que não quero perder tempo aprendendo a utilizar outra ide, nesse caso quero apenas estudar a linguagem, inclusive eu preciso apenas acessar portas seriais de forma nativa para saber se a performance é superior ao de outras linguagens como visual basic ou delphi.

Gostaria de saber se quando eu instalo o cygwin além dele eu preciso instalar o make separado, pois eu baixei o make 3.82 da pagina dele e não deu do mesmo jeito.
A versão do cygwin que estou usando é a 1.5.5.

Desde já agradeço a antenção e aguardo o retorno


No site do netbeans tem um tutorial de como instalar e configurar o C++ nele, em windows, linux etc..
falow

http://yoshikichi.wordpress.com/

Hibernate Brasil:
http://groups.google.com/group/hibernate-brasil
[Email] [WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

laudenpower wrote:Estou precisando usar o netbeans por que não quero perder tempo aprendendo a utilizar outra ide, nesse caso quero apenas estudar a linguagem, inclusive eu preciso apenas acessar portas seriais de forma nativa para saber se a performance é superior ao de outras linguagens como visual basic ou delphi.


A diferença deve ser pequena.
Essas duas linguagens também usam métodos nativos diretamente para fazer o acesso à porta serial.

A vantagem do C vai ser no processamento depois que o dado chega ou sai da serial. De qualquer forma, se você precisa acessar as portas de maneira intensa e com muito controle, é melhor faze-lo usando a API diretamente (java é uma péssima opção).

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
laudenpower
JavaEvangelist
[Avatar]

Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline

A diferença que preciso é de 30ms em um baudrate de 57600 8 databit 1 stop bit e paridade none.

Será que consigo isso?

O tamanho médio do pacote de dados é de 73 caracteres.

Confesso que só estou tentando c++ por que já tentei em delphi, vb e java e não consegui em nenhuma delas!

Enquanto cultivares teu saber, nada tens a temer!

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Bom, você consegue enviar 57600 simbolos por segundo.

Como vc tem 73 caracteres, você poderá enviar 789 mensagens por segundo.
Isso dá pouco mais de uma mensagem por milisegundo.


Só cuidado, a porta serial é um meio pouco confiável. Que tipo de problemas você está tendo?

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
laudenpower
JavaEvangelist
[Avatar]

Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline

Bom, vou desfiar meu rosário...
Tenho um servidor feito em vb que realiza uma consulta via serial rs485 para 5 dispositivos diferentes e com seus respectivos endereços.
Acontece que o meu objetivo é "tomar" o lugar de um desses 5 dispositivos, e para isso eu preciso emular o protocolo de comunicação dele.
A parte de emular o protocolo já foi realizada, porém o servidor realiza uma consulta de status dos dispositivos em um intervalo de 30ms entre um dispositivo e outro, e a consulta de status consiste em um pacote de 12 caracteres, onde está contido o endereço do dispositivo (para que o mesmo responda na sua vez).
Essa consulta é realizada em todos os dispositivos pelo servidor e quando acontece algo a algum dispositivo, esse deve responder assim que recebe o pacote de consulta contendo o seu endereço.
Então o dispositivo possui 30ms para realizar o envio do comando que indica a ocorrencia do evento nele (como o pressionamento de uma botoeira, por exemplo).
Nesse caso se o dispositivo demora mais de 30ms para devolver o comando referente ao evento ocorrido, o servidor acaba recebendo esse comando durante a consulta de outro dispositivo, invalidando assim o envio do dispositivo e quebrando o protocolo.

Resumindo: Preciso enviar um comando para o servidor numa faixa máxima de 30ms depois de receber o comando de consulta com o endereço do dispositivo emulado, pois se isso não acontecer o servidor passa a consultar o proximo dispositivo e o comando enviado é invalidado pelo servidor.

Tentei fazer isso em: Java, VB e delphi6 falhei miseravelmente em todos eles.

Enquanto cultivares teu saber, nada tens a temer!

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

E você já verificou se a lentidão é mesmo da serial? Ou da sua própria aplicação?

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
laudenpower
JavaEvangelist
[Avatar]

Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline

Tipo pelo que já foi verificado tudo indica ser a porta, pois o código foi extensamente revisado e tudo que poderia indicar perda de performance (como loops de verificação de caracter entre outras coisas) foi retirado. Tipo a estratégia de leitura da porta serial é a de pooling ou seja a porta é verificada constantemente para verificar se chegou dados (isso é realizado sem nenhum tipo de sleep).

Enquanto cultivares teu saber, nada tens a temer!

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

laudenpower wrote:Tipo pelo que já foi verificado tudo indica ser a porta, pois o código foi extensamente revisado e tudo que poderia indicar perda de performance (como loops de verificação de caracter entre outras coisas) foi retirado. Tipo a estratégia de leitura da porta serial é a de pooling ou seja a porta é verificada constantemente para verificar se chegou dados (isso é realizado sem nenhum tipo de sleep).


Complicado. Por essas e outras sempre preferi lidar com serial usando a API direto.
Comunicação "confiável" via serial é sempre uma dor de cabeça.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
laudenpower
JavaEvangelist
[Avatar]

Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline

Nem me fale esse projeto é de longe o mais porre que já tive.

Tipo em delphi enxugamos tudo e mais um pouco, fizemos todas as verificações da mensagem (como o endereço a qual ela se destina por exemplo) direto pelo indice da String, utilizamos inclusive uma dll chamada inpout32.dll que manipula direto os pinos da porta e nada adiantou.
Nesse caso tens um exemplo de como utilizar porta serial usando c++ e como se configura o code blocks? No caso do code blocks, ele ta dando um erro que não deixa salvar o projeto.

Agradeço a atenção.

Enquanto cultivares teu saber, nada tens a temer!

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline

Dá uma olhada aqui

http://qextserialport.sourceforge.net/


Usa o qt, vc não vai ter problemas com ele.
http://qt.nokia.com/products/

www.citrox.com.br
laudenpower
JavaEvangelist
[Avatar]

Membro desde: 28/12/2008 21:00:08
Mensagens: 349
Offline

Nesse caso em termos de performance ele se encaixa na situação que relatei ao vinny?
O code blocks funcionou corretamente, tava dando erro por que eu não apontei a pasta do projeto. Agora to lendo sobre c/c++ nesse caso pude observar que a sintaxe é muito próxima do java (o que prova que java "chupinhou" a sintax dos caras )

Enquanto cultivares teu saber, nada tens a temer!

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Sim, o java é intencionalmente parecido com o C++. Foi cópia mesmo, a Sun inicialmente até divulgava isso como uma vantagem.

Porém, tome cuidado. É zilhões de vezes mais difícil programar em C++ do que em Java. E você tem que ficar atento as boas práticas da linguagem, ou fatidicamente irá:
1. Inicializar objetos desnecessariamente;
2. Fazer cópias desnecessárias de dados;
3. Recair em memory leaks e buffers underuns;

This message was edited 1 time. Last update was at 29/11/2010 12:04:50


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team