Author Topic: Problems with Lib-Functions in a Class-Declaration-File  (Read 4115 times)

Mandel

  • Guest
Problems with Lib-Functions in a Class-Declaration-File
« on: January 28, 2010, 11:59:48 am »
Hello ...

I want to write a small program which controls a firewire camera. With the firewire camera I got a library to control the camera ("FGCamera.lib", "FGCamera.dll", "FGCamera.h")
I added the lib-File to the Linker (Build Options -> Linker settings -> FGCamera) und the h-File to my main.cpp. So it was possible to create a camera object in my program.
All works fine...

But now I wanted to create a new class, which works with the camera.
So I created a new cpp- and h-File and them to the project.
But now there are some errors!

Code
Compiling: main.cpp
Linking console executable: bin\Debug\Test.exe
obj\Debug\Kamera.o: In function `_ZN7AVTPikeC2Ev':
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:6: undefined reference to `__imp___ZN9CFGCameraC1Ev'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:7: undefined reference to `CFGCamera::Connect(UINT32HL*, void*)'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:8: undefined reference to `CFGCamera::OpenCapture()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:8: undefined reference to `CFGCamera::~CFGCamera()'
obj\Debug\Kamera.o: In function `_ZN7AVTPikeC1Ev':
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:6: undefined reference to `__imp___ZN9CFGCameraC1Ev'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:7: undefined reference to `CFGCamera::Connect(UINT32HL*, void*)'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:8: undefined reference to `CFGCamera::OpenCapture()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:8: undefined reference to `CFGCamera::~CFGCamera()'
obj\Debug\Kamera.o: In function `_ZN7AVTPikeD2Ev':
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:13: undefined reference to `CFGCamera::StopDevice()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:14: undefined reference to `CFGCamera::CloseCapture()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:15: undefined reference to `CFGCamera::Disconnect()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:15: undefined reference to `CFGCamera::~CFGCamera()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:15: undefined reference to `CFGCamera::~CFGCamera()'
obj\Debug\Kamera.o: In function `_ZN7AVTPikeD1Ev':
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:13: undefined reference to `CFGCamera::StopDevice()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:14: undefined reference to `CFGCamera::CloseCapture()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:15: undefined reference to `CFGCamera::Disconnect()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:15: undefined reference to `CFGCamera::~CFGCamera()'
C:/Dokumente und Einstellungen/Daniel/Desktop/Test/Kamera.cpp:15: undefined reference to `CFGCamera::~CFGCamera()'
collect2: ld returned 1 exit status[\code]

Here are my files:
main.cpp:
[code]#include <iostream>
#include <stdlib.h>
#include "Kamera.h"

using namespace std;

int main(int argc, char *argv[])
{
AVTPike K;

return 0;
}

Kamera.cpp:
Code
#include "Kamera.h"

//===============================================================================
// Konstruktor
AVTPike::AVTPike()
{
Camera.Connect(&NodeInfo[0].Guid);
Camera.OpenCapture();
Camera.StartDevice();
}
//===============================================================================
AVTPike::~AVTPike()
{
Camera.StopDevice();
Camera.CloseCapture();
Camera.Disconnect();
}

Kamera.h:
Code
#ifndef AVTPIKE_H
#define AVTPIKE_H
#include "fgcamera.h"

class AVTPike
{
public:
AVTPike();
~AVTPike();

private:
CFGCamera Camera;
FGFRAME Frame;
FGPINFO Info;
UINT32 Result;
FGNODEINFO NodeInfo[3];
UINT32 NodeCnt;
};
#endif


Where is the problem?
I hope you can help me  :)

PS: Sorry for my poor english  :([/code]

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9723
Re: Problems with Lib-Functions in a Class-Declaration-File
« Reply #1 on: January 28, 2010, 08:08:48 pm »
Where is the problem?
please enable full compiler logging (see my sig), do a re-build and post the log again.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: https://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: https://wiki.codeblocks.org/index.php?title=FAQ