我正在尝试使用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);
};
答案 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)解决了这个问题。