如何在visual studio中链接库

时间:2013-02-12 15:51:03

标签: c++ visual-studio-2010 linker static-libraries

我正在尝试使用SMILE库(http://genie.sis.pitt.edu/index.php/downloads)在c ++中创建一个项目。在网站上我下载了x64的Visual Studio 2010 / VC 10.0 SP1版本(我安装了Windows 7和Visual Studio 2010)。创建一个新项目后,我转到项目属性 - > gt> configuration-> C / C ++ - >其他包含的目录,并设置包含该库的文件夹的路径。当我尝试编译Iget错误时:

1>------ Inizio compilazione: Progetto: IDSS_2013, Configurazione: Debug Win32 ------
1>  stdafx.cpp
1>  AssemblyInfo.cpp
1>  IDSS_2013.cpp
1>  Generazione del codice in corso...
1>  .NETFramework,Version=v4.0.AssemblyAttributes.cpp
1>LINK : fatal error LNK1104: impossibile aprire il file 'smile_dbg.lib'
========== Compilazione: 0 completate, 1 non riuscite, 0 aggiornate, 0 ignorate ==========

源文件是随文档中的示例提供的:

#include "smile.h"

#include <stdio.h>

void CreateNetwork(void);
void InfereceWithBayesNet(void);
void UpgradeToInfluenceDiagram(void);
void InferenceWithInfluenceDiagram(void);
void ComputeValueOfInformation(void);

int main()
{
 CreateNetwork();
 InfereceWithBayesNet();
 UpgradeToInfluenceDiagram();
 InferenceWithInfluenceDiagram();
 ComputeValueOfInformation();
 return(DSL_OKAY);
};

3 个答案:

答案 0 :(得分:1)

使用#pragma comment添加库或使用项目设置(链接器 - >输入)

答案 1 :(得分:1)

根据website

  

不要在项目设置中添加smile.lib作为额外的链接器输入 - smile.h负责处理。

我想这意味着smile.h文件已经包含:

#pragma import smile.lib

你能检查是否是这种情况吗?

答案 2 :(得分:0)

我遇到了类似的问题(也在Windows 7和Visual Studio 2010上),并使用x86版本的smile(在Win32下:Visual Studio 2010 / VC 10.0 SP1)解决了这个问题。