wil gebruik gaan maken van een SDK van een beveiligingscamera en de daarbij geleverde C++ voorbeelden. Een van de voorbeelden is een consoleapplicatie voor zowel Windows als Linux. Ik probeer via g++ het main.cpp bestand te compileren.
Allereerst de inhoud van main.cpp:
http://pastebin.com/m2308de59
de foutmelding die ik krijg na het het geven van een: g++ --verbose main.cpp:
develop1:~/Console# g++ --verbose main.cpp
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --with-tune=i686 --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
/usr/lib/gcc/i486-linux-gnu/4.1.2/cc1plus -quiet -v -D_GNU_SOURCE main.cpp -quiet -dumpbase main.cpp -mtune=i686 -auxbase main -version -o /tmp/ccXt2Zm5.s
ignoring nonexistent directory "/usr/local/include/i486-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../i486-linux-gnu/include"
ignoring nonexistent directory "/usr/include/i486-linux-gnu"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/i486-linux-gnu
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/backward
/usr/local/include
/usr/lib/gcc/i486-linux-gnu/4.1.2/include
/usr/include
End of search list.
GNU C++ version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) (i486-linux-gnu)
compiled by GNU C version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21).
GGC heuristics: --param ggc-min-expand=44 --param ggc-min-heapsize=28059
Compiler executable checksum: 183d42a838ed2b7313bffcb8f2f2fda7
as -V -Qy -o /tmp/ccvUkIbl.o /tmp/ccXt2Zm5.s
GNU assembler version 2.17 (i486-linux-gnu) using BFD version 2.17 Debian GNU/Linux
/usr/lib/gcc/i486-linux-gnu/4.1.2/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crt1.o /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crti.o /usr/lib/gcc/i486-linux-gnu/4.1.2/crtbegin.o -L/usr/lib/gcc/i486-linux-gnu/4.1.2 -L/usr/lib/gcc/i486-linux-gnu/4.1.2 -L/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib -L/lib/../lib -L/usr/lib/../lib /tmp/ccvUkIbl.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/i486-linux-gnu/4.1.2/crtend.o /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crtn.o
/tmp/ccvUkIbl.o: In function `main':
main.cpp:(.text+0x4779): undefined reference to `AV2000F::AV2000F()'
main.cpp:(.text+0x4787): undefined reference to `AV2000F::Initialization()'
main.cpp:(.text+0x510d): undefined reference to `AV2000F::~AV2000F()'
main.cpp:(.text+0x512f): undefined reference to `AV2000F::~AV2000F()'
collect2: ld returned 1 exit status
van wat ik heb Googelen schijnt dit een 'linking' probleem te zijn, alleen heb ik geen flauw idee hoe dit opgelost kan worden.
Allereerst de inhoud van main.cpp:
http://pastebin.com/m2308de59
de foutmelding die ik krijg na het het geven van een: g++ --verbose main.cpp:
develop1:~/Console# g++ --verbose main.cpp
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --with-tune=i686 --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)
/usr/lib/gcc/i486-linux-gnu/4.1.2/cc1plus -quiet -v -D_GNU_SOURCE main.cpp -quiet -dumpbase main.cpp -mtune=i686 -auxbase main -version -o /tmp/ccXt2Zm5.s
ignoring nonexistent directory "/usr/local/include/i486-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../i486-linux-gnu/include"
ignoring nonexistent directory "/usr/include/i486-linux-gnu"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/i486-linux-gnu
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/backward
/usr/local/include
/usr/lib/gcc/i486-linux-gnu/4.1.2/include
/usr/include
End of search list.
GNU C++ version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) (i486-linux-gnu)
compiled by GNU C version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21).
GGC heuristics: --param ggc-min-expand=44 --param ggc-min-heapsize=28059
Compiler executable checksum: 183d42a838ed2b7313bffcb8f2f2fda7
as -V -Qy -o /tmp/ccvUkIbl.o /tmp/ccXt2Zm5.s
GNU assembler version 2.17 (i486-linux-gnu) using BFD version 2.17 Debian GNU/Linux
/usr/lib/gcc/i486-linux-gnu/4.1.2/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crt1.o /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crti.o /usr/lib/gcc/i486-linux-gnu/4.1.2/crtbegin.o -L/usr/lib/gcc/i486-linux-gnu/4.1.2 -L/usr/lib/gcc/i486-linux-gnu/4.1.2 -L/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib -L/lib/../lib -L/usr/lib/../lib /tmp/ccvUkIbl.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/i486-linux-gnu/4.1.2/crtend.o /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crtn.o
/tmp/ccvUkIbl.o: In function `main':
main.cpp:(.text+0x4779): undefined reference to `AV2000F::AV2000F()'
main.cpp:(.text+0x4787): undefined reference to `AV2000F::Initialization()'
main.cpp:(.text+0x510d): undefined reference to `AV2000F::~AV2000F()'
main.cpp:(.text+0x512f): undefined reference to `AV2000F::~AV2000F()'
collect2: ld returned 1 exit status
van wat ik heb Googelen schijnt dit een 'linking' probleem te zijn, alleen heb ik geen flauw idee hoe dit opgelost kan worden.