2010-06-28 5 views
0

오픈 소스 라이브러리를 내 프로젝트 중 하나에 연결하려고합니다. 라이브러리는 관리되지 않으며 (Tetgen) 프로젝트는 관리되는 C++입니다.LNK 2028 - 2019/관리 형 및 관리되지 않는 C++? (VS 2008)

내 프로젝트는 헤더를 인식하고 정의 된 기능을 사용할 수 있습니다. "무효 __thiscall의 tetgenio :: save_nodes (숯불 CONST *) 공개"

오류 LNK2028 : 해결되지 않은 토큰 (0A000E20)하지만 나는 그것이 통화 당에 정의 된 몇 가지 방법에 액세스하려고 할 때마다 2028 오류 (? save_nodes @ tetgenio @@ $$ FQAEXPBD @ Z) 함수에서 참조 "공개 : 가상 부울 __thiscall ForwardModelingPlugin :: CustomMeshVol3D :: 모자이크로 꾸밀 수 (무효)"(모자이크로 꾸밀 @ CustomMeshVol3D @ ForwardModelingPlugin @@ $$ FUAE_NXZ?)

테스트 기능을 만들려고했습니다 :

int tetgenio::Test(int i) { 
    return i; 
} 

... 헤더에 정의 된 다른 Testbis 함수. Testbis가 작동하면 Test에서 2028 오류가 발생합니다.

나는 내 프로젝트 및 생성 된 lib 디렉토리의 .OBJ을 비교하고, lib 디렉토리에 대한이있다 :

[email protected]@@[email protected] 

그러나 .OBJ에는 다음과 같습니다

[email protected]@@[email protected] in the .obj 

그것은 나타납니다 그들은 동일하지 않습니다.

모든 것이/clr로 컴파일됩니다. 나는 .lib와 .dll 모두를 만들려고했는데, 같은 결과를 보여 주었다.

+0

Tetgen 자체가/clr로 컴파일 되었습니까? 그렇지 않은 경우 필요합니다. –

+0

예. 모든 것이/clr에 컴파일됩니다. – ccote

답변

0

동일한 파일을 포함하는 다른 폴더로 연결되는 링커 문제로 인해 발생했습니다.

관련 문제