O tipo 'uint32_t' não pôde ser resolvido
Estou trabalhando em um programa C ++ no Eclipse (3.8.1) CDT. Estou usando o compilador gcc no Debian 8. Também estou usando uma biblioteca de código aberto chamada opendnp3 escrita em C ++, que requeruint32_t resolver como um parâmetro em várias chamadas de método e construtores.
Nos objetos opendnp, o intellisense não lista
__uint32_t
no entanto, resolve.
O tipo é definido em<cstdint>
(<cstdint>
resolve muito bem). Eu posso abrir a declaração e ver claramente 'using ::uint32_t;
' lá.
Na minha pesquisa, adicionei-std=c++11
para 'Todas as opções' em 'Compilação C / C ++ -> Configurações -> Configurações da ferramenta -> Compilador GCC C ++' e também reconstruí o índice do projeto e reiniciei o Eclipse, mas ainda não resolve.
Aqui está o código até agora:Editado em um projeto simples do HelloWorld para ajudar a diagnosticar o problema
#include <iostream>
#include <cstdint> //has uint32_t defined
using namespace std;
int main() {
__uint32_t t = 0; //resolves just fine
uint32_t i = 0; //Type could not be resolved
auto x = "123"; //C++ 11 working
cout << "Foo!" << endl; // prints Foo!
return 0;
}
Console CDT após uma tentativa de compilação:
23:10:52 **** Compilação incremental de configuração Debug para o projeto FOO **** make all make: Nada a ser feito para 'all'.
23:10:52 Compilação concluída (demorou 133ms)