«неразрешенный внешний символ _triangulate» при использовании библиотеки треугольников

Я в настоящее время использую библиотека треугольников в моей программе. Библиотека содержит только файлы .c и .h (без .lib). Я получаю следующую ошибку в Visual Studio C ++ 2010:

    1>data.obj : error LNK2019: unresolved external symbol _triangulate referenced in function "struct triangulateio __cdecl readfile(void)" (?readfile@@YA?AUtriangulateio@@XZ)

Файл заголовка моего data.cpp выглядит следующим образом:

#ifndef DATA_H
#define DATA_H

#include <WinSock2.h>

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <fstream>
#include <string>
#include <time.h>
#include <GL/gl.h> //include the gl header file
#include <GL/glut.h> //include the glut header file
#include <GL/glu.h> //include the glut header file
#include <armadillo>

//Namespace
using namespace std;
using namespace arma;

extern "C"{
#ifdef SINGLE
#define REAL float
#else /* not SINGLE */
#define REAL double
#endif /* not SINGLE */

#include "triangle.h"}
triangulateio readfile();

#endif

Data.cpp

 triangulate("pczAevn", &in, &mid, &vorout);

Я уже заставил свою программу работать с моим Makefile в Ubuntu, но мне нужно запустить мою программу в Windows.
Не стесняйтесь спрашивать дополнительную информацию.

РЕДАКТИРОВАНИЕ № 1:
Если вы используете библиотеку треугольников с VS, вы должны поместить следующую инструкцию поверх файла triangle.c #define TRILIBRARY
Теперь это скомпилировать. Огромное спасибо за помощь.

1

Решение

Компоновщик не может найти определение для «triangulateio readfile ()», если он определен в файле .c, я предполагаю, что он не построен. Если вы включите его в проект, это может сработать.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]