Pessoal, estou usando as ferramentas da KEIL, o uLink, cedido por nosso amigo Fênix, e o uVision3 v3.23.
E estou compilando com o GNU-tools GNUARM 411 e GNUARM 344.
O problema é o seguinte: Ambos compilam corretamente meu código em C++, porém na hora de debugar, preciso fazer quase que uma mágica para acompanhar no debug o fluxo de programa. Sendo assim.
Quando:
1º - Usando o "GNUARM 4.1.1 for Windows released" e com ou sem otimização, o código em C funciona corretamente para debugar, porém o código em C++ não tem a menor relação com os simbolos de debug gerados. Impossibilitando acompanhar qualquer coisa.
2º - Usando o "GNUARM 3.4.4 for Windows released" e "apenas" com otimização, o código em C e C++ são gerados corretamente os simbolos de debug, ai o problema é que ele otimiza tanto, que em certas partes, as variáveis, são só observadas no assembler. Ou seja, a otimização F* com o debug.
Conclusão. Eu consigo fazer as coisas funcionarem apenas compilando com o GNUARM3.4.4, mas tenho que me virar quando preciso debugar e olhar o conteúdo de uma deteminada variável. Já no outro... GNUARM4.1.1, funciona tudo, apenas com programas em C.
Eu gostaria que se possível, alguém passado por isso e encontrado uma solução melhor, por favor me avise.
Obrigado.