Como criar esse projeto simples de C ++ / SWIG / C # no Visual Studio 201

Preciso de ajuda para configurar um projeto CIG / C # SWIG simples. Estou com dificuldade para montar um projeto C ++ que usa as ligações SWIG. Estou usando o Visual Studio 2010 e a versão mais recente do SWIG.

Meu código é simplesmente:

cpp_file.h:

#pragma once
class cpp_file
{
public:
    cpp_file(void);
    ~cpp_file(void);

    int times2(int arg);
};

cpp_file.cpp

#include "cpp_file.h"
cpp_file::cpp_file(void)
{
}
cpp_file::~cpp_file(void)
{
}
int cpp_file::times2(int arg)
{
return arg * 2;
}

E meu arquivo de interface SWIG é:

cpp_file.i

/* cpp_file.i */
%module cpp_file
%{
/* Put header files here or function declarations like below */
extern int times2(int arg);
%}
extern int times2(int arg);

Eu posso compilar bem este projeto. Em seguida, executo o comando SWIG para gerar o wrapper:

swig -csharp "C:/pathToFile/cpp_file.i"

Não sei o que fazer neste momento. Não consigo encontrar nenhum tutorial ou documentação que explique o que fazer no Visual Studio 2010.

Quando adiciono o arquivo * cpp_file_wrap.c * que SWIG gera ao meu projeto do Visual Studio 2010 e tento compilar o projeto, recebo dois erros de vinculaçã

error LNK1120: 1 externos não resolvidoserror LNK2001: símbolo externo não resolvido _times2

A primeira mensagem de erro aponta para o meu arquivo DLL. O segundo erro aponta para algum arquivo de objeto (* .obj). O símbolo que a mensagem de erro menciona "_times2" não é o local onde se encontra no meu projeto.

Como posso avançar no meu projeto simples? Existe algum tutorial ou alguma documentação que explica esse processo passo a passo? Não consigo encontrar nada que envolva C ++ com SWIG, C #, Visual Studio 2010 e .Net v4.0.

questionAnswers(4)

yourAnswerToTheQuestion