todos, escribo un código como este en mi mac os x 10.8, y cuando uso "gcc use_new.cpp -o use_new" para compilarlo , pero lanza un mensaje erróneo de esta manera:gcc 4.8 en MAC OS X 10.8 arroja "Símbolos indefinidos para la arquitectura x86_64:"
Undefined symbols for architecture x86_64:
"std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))", referenced from:
_main in ccr2vrRQ.o
"std::basic_ostream<char, std::char_traits<char> >::operator<<(void const*)", referenced from:
_main in ccr2vrRQ.o
"std::basic_ostream<char, std::char_traits<char> >::operator<<(double)", referenced from:
_main in ccr2vrRQ.o
"std::basic_ostream<char, std::char_traits<char> >::operator<<(int)", referenced from:
_main in ccr2vrRQ.o
"std::basic_ostream<char, std::char_traits<char> >::operator<<(unsigned long)", referenced from:
_main in ccr2vrRQ.o
"std::ios_base::Init::Init()", referenced from:
__static_initialization_and_destruction_0(int, int) in ccr2vrRQ.o
"std::ios_base::Init::~Init()", referenced from:
__static_initialization_and_destruction_0(int, int) in ccr2vrRQ.o
"std::cout", referenced from:
_main in ccr2vrRQ.o
"std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)", referenced from:
_main in ccr2vrRQ.o
"std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)", referenced from:
_main in ccr2vrRQ.o
"operator delete(void*)", referenced from:
_main in ccr2vrRQ.o
"operator new(unsigned long)", referenced from:
_main in ccr2vrRQ.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
y cuando uso "g ++ use_new.cpp -o use_new" está bien, que me puede ayudar !? ¡gracias!
#include <iostream>
struct fish
{
float weight;
int id;
int kind;
};
int main()
{
using namespace std;
int* pt = new int;
*pt = 1001;
cout<<"int: "<<*pt<<"in location: "<<pt<<endl;
double* pd = new double;
*pd = 100000001.0;
cout<<"double: "<<*pd<<"in location: "<<pd<<endl;
cout<<"int point pt is length "<<sizeof(*pt)<<endl;
cout<<"double point pd is length "<<sizeof(*pd)<<endl;
delete pt;
delete pd;
cout<<(int *)"How are you!"<<endl;
return 0;
}
Tengo un problema similar con 'i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1', tratando de compilar un programa de" Hola mundo ". Comenzó generosidad. – Randomblue
Esto se ha pedido de una forma u otra tantas veces (por ejemplo [aquí] (http://stackoverflow.com/questions/5590983/problem-occurred-while-compiling-a-cpp-program-in-gcc) , [aquí] (http://stackoverflow.com/questions/1221902/programs-compiles-in-g-but-exits-with-linker-errors-in-gcc?rq=1) o [aquí] (http: //stackoverflow.com/questions/8904722/gcc-linker-cant-find-standard-library)). Te beneficiarías al leer [¿Cuál es la diferencia entre g ++ y gcc?] (Http://stackoverflow.com/questions/172587/what-is-the-difference-between-g-and-gcc). – Troubadour