Página 1 de 2

AJUDA IAR

MensagemEnviado: 14 Nov 2017 14:13
por digo
olá a todos,
sou novo e estou tento fazer um código funcionar no IAR.
o código funciona em outros computadores que ja tinha o IAR, mas como instalei recentemente no meu ele da um erro de biblioteca

Fatal Error[Pe1696]: cannot open source file "iostream"
searched: "C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\inc\"
searched: "C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\inc\c\"
Error while running C/C++ Compiler

quando eu faço o caminho do arquivo iostream ele da outros erros, falando que nao reconhece class, dentre outras coisas

alguem pode me ajudar??

Re: AJUDA IAR

MensagemEnviado: 15 Nov 2017 08:23
por Red Neck Guy
Tu colocaste endereço absoluto nos includes?
Lá nas configurações tem o path das bibliotecas padrão, que são aquelas que você incluí com <>
As bibliotecas locais, ao projeto, são inclusas entre " ". O compilar considera a pasta do projeto como a raiz das inclusões, logo, faça sempre os caminhos em relação a ele e nunca precisará colocar caminhos absolutos.
Coloca aí o trecho com os includes pra dar uma analisada.

Re: AJUDA IAR

MensagemEnviado: 16 Nov 2017 18:30
por digo
o que é endereço absoluto ?
as bibliotecas estão certas, pois no computador que já tinha instalado o programa funciona
ele só não funciona no meu, pois instalei e acho que ta faltando alguma configuração básica para ele encontrar essas bibliotecas que estão na pasta
C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\inc\cpp
eu estava pensando se tem que colocar alguma variável de ambiente, ou fazer uma configuração no IAR para ele encontrar estas bibliotecas.

quando eu abro o projeto aparece isto:

LOAD: Configuration 'Debug' in the project 'xxxxxx' contains broken options for tool 'ICCARM':
(Registry: unknown name: CCOptimizationNoSizeConstraints)
Options for 'ICCARM' will be set to default.
Creating backup of original project file.
LOAD: Configuration 'Debug' in the project 'xxxxxx' contains broken options for tool 'ILINK':
The format of this file is not supported by this version of the workbench. It appears to have been written by a newer
version of the workbench.

Diagnostics: 'Settings 'ILINK': unsupported version - '.
Options for 'ILINK' will be set to default.
LOAD: Configuration 'Debug' in the project 'xxxxxx' contains broken options for tool 'PEMICRO_ID':
The format of this file is not supported by this version of the workbench. It appears to have been written by a newer
version of the workbench.

Diagnostics: 'Settings 'PEMICRO_ID': unsupported version -'.
Options for 'PEMICRO_ID' will be set to default.
LOAD: Configuration 'Release' in the project 'xxxxxx' contains broken options for tool 'ICCARM':
(Registry: unknown name: CCOptimizationNoSizeConstraints)
Options for 'ICCARM' will be set to default.
LOAD: Configuration 'Release' in the project 'xxxxxx' contains broken options for tool 'ILINK':
The format of this file is not supported by this version of the workbench. It appears to have been written by a newer
version of the workbench.

Diagnostics: 'Settings 'ILINK': unsupported version -'.
Options for 'ILINK' will be set to default.
LOAD: Configuration 'Release' in the project 'xxxxxx' contains broken options for tool 'PEMICRO_ID':
The format of this file is not supported by this version of the workbench. It appears to have been written by a newer
version of the workbench.

Diagnostics: 'Settings 'PEMICRO_ID': unsupported version -'.
Options for 'PEMICRO_ID' will be set to default.
LOAD: Configuration 'Debug' in the project 'xxxxxx' contains broken options for tool 'ICCARM':
(Registry: unknown name: CCOptimizationNoSizeConstraints)
Options for 'ICCARM' will be set to default.

Re: AJUDA IAR

MensagemEnviado: 17 Nov 2017 07:02
por KrafT
Parece um problema de licença. Tem que instalar a partir da mídia original e depois licenciar.

Re: AJUDA IAR

MensagemEnviado: 18 Nov 2017 10:52
por digo
eu instalei e coloquei a licença quando o IAR pediu, como se instala um programa normal
podes me explicar melhor??, pois não entendi direito pq pode ser um problema de licença

Re: AJUDA IAR

MensagemEnviado: 18 Nov 2017 14:00
por Red Neck Guy
Sei lá, como não há detalhes vou sugerir um caminho que talvez não seja o qual tu gostaria de seguir.
1) Crie um projeto hello world e compile.
2) Veja se ocorrem erros.

Se não ocorrerem, teu problema está relacionado com os caminhos dos teus arquivos, bibliotecas e executáveis.
Caso precise de ajuda e tua licença seja original, tem suporte do IAR aqui no Brasil.

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 08:43
por digo
Aquino
e
KrafT
não sei se vocês utilizam o IAR, caso sim
quando vcs instalaram, não foi feita nenhuma outra configuração ou instalação para que todos os seus códigos funcionassem ?

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 10:13
por digo
Aquino
o problema esta em utilizar a biblioteca
#include<iostream>, porque em codigos que essa biblioteca nao esta o codigo funciona corretamente

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 11:03
por eletroinf
Veja que o erro é relativo ao source file, e não a header

Fatal Error[Pe1696]: cannot open source file "iostream"


Além do que foi dito pelos colegas: Se o projeto que está tentando compilar foi feito em outra instalação do IAR, refaça o projeto, adicionando os arquivos.
Eu já tive problemas com o Keil devido a utilizar um projeto feito em outra instalação. Bastou recriar o projeto do zero adicionando os arquivos - mas só os .h e .c, nada de copiar outros arquivos que o compilador gera do projeto antigo.

Edit:
Tu disse
#include<iostream>


Falta a extensão do arquivo. Se tem .c e .h na mesma pasta ele vai pegar o .c primeiro pela ordem alfabética e vai dar problema.
Penso que o correto seria de usar:
#include<iostream.h>

Bom, eu nunca usei iar, é só uma sugestão.

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 14:11
por Red Neck Guy
Agora me veio em mente uma coisa, você foi em propriedades e alterei para C++?
Senão, vai compilar só em ANSI C.

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 15:12
por eletroinf
Agora me veio em mente uma coisa, você foi em propriedades e alterei para C++?
Senão, vai compilar só em ANSI C.


Eu pensei nisso também, mas lá no começo do erro diz
Error while running C/C++ Compiler

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 16:38
por Red Neck Guy
Fiz um teste agora, simplesmente incluí o <iostream> num projeto que estou trabalhando.
Sem mudar para C++, tenho a mensagem:
ada code
Building configuration: Interface - Debug 
Updating build tree...
Protocolo.c
Fatal Error[Pe1696]: cannot open source file "iostream" C:\repositorios\interface_bar_aberto\SOFTWARE\Drivers\Protocolo\Protocolo.c 33
searched: "C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\arm\inc\"
searched: "C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\arm\inc\c\"
Error while running C/C++ Compiler
Linking
Fatal Error[Li004]: file "C:\repositorios\maquina\SOFTWARE\Debug\Obj\Protocolo.o" is not an object or archive file
Error while running Linker

Total number of errors: 2
Total number of warnings: 0


Então, o problema dele pode ser isso.
Neste caso, vá aqui:

Imagem

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 16:52
por digo
Aquino
eu fui nessa tela e ta configurado como a imagem que vc passou, tem que alterar alguma coisa??

Re: AJUDA IAR

MensagemEnviado: 21 Nov 2017 18:10
por Red Neck Guy
Marca a opção C++ ou Auto.
Agora, se teu código é misto, lembra de utilizar o:
cpp code
#ifdef __cplusplus
extern "C"{
#endif


#ifdef __cplusplus
}
#endif

Re: AJUDA IAR

MensagemEnviado: 23 Nov 2017 13:51
por digo
Aquino

e
eletroinf

muito obrigado pela ajuda.
o problema era que eu não tinha copilado para c++ mesmo
vlw mesmo