g++ 编译c++出现错误
在使用g++ 编译c++时候出现如下两个错误,请问这两个错误之间有联系吗?还是只是独立的两个错我。对于第一个错误,我在头文件里面声明了几个全局函数,实现放在一个cpp文件里面,然后在另一个cpp文件里面包括了该头文件使用这些函数,不知为何会出现这个错误。然后第二个错误我完全摸不着头脑,请各位指教。小弟现在这里谢过了
==============================================================================================
./bin/SpkRegDemo.o:在函数‘__gnu_cxx::new_allocator<std::string>::new_allocator()’中:
/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:10: `RegisterSpeaker(char*)'被多次定义
./bin/SpkRegDemoMain.o:/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:10:第一次在此定义
./bin/SpkRegDemo.o:在函数‘SpeakerRecogniser(char*, double*)’中:
/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:46: `SpeakerRecogniser(char*, double*)'被多次定义
./bin/SpkRegDemoMain.o:/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:46:第一次在此定义
./bin/SpkRegDemo.o:在函数‘DeleteSpeakerModel(char*)’中:
/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:78: `DeleteSpeakerModel(char*)'被多次定义
./bin/SpkRegDemoMain.o:/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:78:第一次在此定义
./bin/SpkRegDemo.o:在函数‘CheckSpeakerModelList()’中:
/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:85: `CheckSpeakerModelList()'被多次定义
./bin/SpkRegDemoMain.o:/home/hammer/SpkReg_v1.0/SpkRegDemo.cpp:85:第一次在此定义
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 0 has invalid symbol index/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 4 has invalid symbol index 11
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 5 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 6 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 7 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 8 has invalid symbol index 12
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 9 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 10 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 11 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 12 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 13 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 14 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 15 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 16 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 17 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 18 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 19 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 20 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 21 has invalid symbol index 22
/usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_line): relocation 0 has invalid symbol index 2
/usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu/crt1.o:在函数‘_start’中:
(.text+0x18):对‘main’未定义的引用
collect2: error: ld returned 1 exit status
make: *** [all] 错误 1
=============================================================================================