Dll и Lib

  • Автор темы haidy
  • Дата начала
Статус
Закрыто для дальнейших ответов.
H

haidy

#1
Здравствуйте!

У меня есть библиотека mylib.lib и папка src, содержащая .h и .c файлы. Причем библиотека создавалась на основе файлов из этой папки. Соответственно, в свой проект я включаю библиотеку и указываю путь к этой папке. В src есть файл myheader.h, который я также включаю (#include "myheader.h") в проект. В нем объявлены функции в виде:

#ifdef __cplusplus
extern "C" {
#endif
extern void
dgssv(superlu_options_t *, SuperMatrix *, int *, int *, SuperMatrix *,
SuperMatrix *, SuperMatrix *, SuperLUStat_t *, int *);

... //другие функции

#ifdef __cplusplus
}
#endif

Описания функций содержатся в .c - файлах.

Хочу создать на основе папки src dll'ку, и подключать просто 2 библиотеки (lib и dll). Хотя, myheader.h, видимо, тоже нужен будет.
Я полазила по форумам и решила, что у меня должно получиться довольно часто используемое сочетание dll-h-lib. Только как это сделать, мне не понятно.

Когда пробую так:

#include <windows.h>
#include "myheader.h"
#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
return 1;
}

возникает конфликт (переобъявление DOUBLE) между borland'ским файлом wtypes.h и одним из .h файлов из src вот на этих строках соответственно:

typedef enum {NOREFINE, SINGLE=1, DOUBLE, EXTRA} IterRefine_t; // мой файл (slu_util.h)
typedef double DOUBLE; //wtypes.h

Возможно ли, чтобы wtypes.h не участвовал в процессе компиляции?
Или я вообще все неправильно делаю?
 
Статус
Закрыто для дальнейших ответов.