Ошибка импорта:./filename.so: неопределенный символ: is_InitCamera

Я пытаюсь создать файл-оболочку, используя SWIG для кода C++, и вызвать его в Python на платформе Raspberry Pi Linux. Код C++ содержит встроенную функцию камеры uEye IDS. Я использую создатель QT и openCV.

Для создания файла-оболочки я использовал источник: https://mit-crpg.github.io/OpenMOC/devguide/swig.html, и он отлично работает для обычного кода C++. Теперь, когда я пытаюсь создать оболочку для камеры IDS, я получаю сообщение об ошибке: Ошибка импорта:./filename.so: undefined symbol: is_InitCamera. Я не знаю, как мне это исправить.

экзамен.i - Интерфейсный файл-

%module exam
%{
#define SWIG_FILE_WITH_INIT
#include "exam.h"

%}
%include "exam.h"

exc.h - заголовочный файл-

#include <iostream>
#include <ueye.h>
#include <opencv2/opencv.hpp>
double cam (int a);

exc.cpp - Исходный файл -

#include"exam.h"

using namespace std;
double cam(int a)
{

    int nRet = 0;
        int nMemoryId = 0;
        HIDS hCam = a;
        HWND hWndDisplay = 0;



        nRet = is_InitCamera(&hCam, hWndDisplay);
        if (nRet != IS_SUCCESS)
        {
            cout << "ERROR" << endl;
        }
        else
        {
            cout << "Camera initialisation was successful!" << endl << endl;
        }


        // Disables the hCam camera handle and releases the data structures and memory areas taken up by the uEye camera
        nRet = is_ExitCamera(hCam);
        if (nRet == IS_SUCCESS)
        {
            cout << "The camera has been successfully logged off!" << endl << endl;
        }



        system("pause");
        return 1;
}

0 ответов

Другие вопросы по тегам