Bonjour à tous,


depuis des années je programme dans differents langages et j'avais toujours repoussé l'apprentissage de c++ au lendemain.
Je viens de reecrire une classe python, que j'avais codé, en c++ tant bien que mal. Le but etant de faire une dll pour l'utiliser par une application externe (windev)

Je coince à la creation de ma DLL sous codeblocks, je m'explique:

j'ai crée ma classe "memfile" (il y a memfile.h et memfile.cpp)
Avec Codeblocks, je démarre un projet DLL où j'obtiens 2 fichiers : main.h et main.cpp
dans le dossier du projet, je mets les 2 fichiers de ma classe memfile.
Voici le main.h de la DLL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
#ifndef __MAIN_H__
#define __MAIN_H__
 
#include <windows.h>
#include "memfile.h"
 
 
memfile m;
 
 
 /*  To use this exported function of dll, include this header
 *  in your project.
 */
 
#ifdef BUILD_DLL
    #define DLL_EXPORT __declspec(dllexport)
#else
    #define DLL_EXPORT __declspec(dllimport)
#endif
 
 
#ifdef __cplusplus
extern "C"
{
#endif
 
 
 
 
void DLL_EXPORT SomeFunction(const LPCSTR sometext);
 
#ifdef __cplusplus
}
#endif
Le probleme vient à la compilation : j'obtiens toujours un fichu "undefined reference to `memfile::memfile()'
Ca fait des heures que je cherche.. ca viendrait d'un probleme de link....
Je me suis mis sous "debug" ou "release" ca change rien, c'est la galère!

merci à celui/celle qui peut m'eclairer