Aldo Nogueira wrote: >a.o: In function `main': >a.o(.text+0x7): undefined reference to `funcao' >collect2: ld returned 1 exit status
O s�mbolo 'funcao' n�o existe mesmo. Verifique seu c�digo de novo e ver� que
voc� n�o o declarou. No seu b.cpp, a fun��o define o s�mbolo 'funcao(void)',
que n�o � a mesma coisa!
>Essa eh a maneira correta? Um codigo em C sempre pode ser compilado como
>C++?
N�o. Mesmo porque voc� compilou c�digo C com o g++ -- voc� n�o compilou c�digo
C como C++. Existe uma diferen�a a�.
>Existe 'extern "C"' pro caso de C++ chamando codigo compilado no estilo C,
>mas 'extern "C++"' nao existe em C.
Faltou justamente o 'extern "C"' no seu c�digo:
/*** b.hpp ***/
extern "C" void funcao();
/*** eof ***/
agora deve funcionar.
--
Thiago Macieira - UFOT Registry number: 1001
[EMAIL PROTECTED]
ICQ UIN: 1967141 PGP/GPG: 0x6EF45358
Registered Linux user #65028
msg78195/pgp00000.pgp
Description: signature
