如何在Visual Studio中连接库
问题描述:
我正在尝试使用SMILE库(http://genie.sis.pitt.edu/index.php/downloads)在C++中创建项目。在网站上,我下载了适用于x64的Visual Studio 2010/VC 10.0 SP1版本(我安装了Windows 7和Visual Studio 2010)。在创建一个新项目后,我进入了项目properties-> configuration-> C/C++ - >其他包含的目录,并设置包含该库的文件夹的路径。当我尝试编译的iget错误:如何在Visual Studio中连接库
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);
};
答
使用#pragma注释库中添加或使用项目设置(接头 - >输入)
答
按照website:
DO NOT add smile.lib as additional linker input in project settings - smile.h takes care of that.
我想象意思是smile.h文件已经包含:
#pragma import smile.lib
你可以检查是否是这种情况?
答
我有一个类似的问题(也在Windows 7和Visual Studio 2010上),并使用x86版本的微笑(在Win32下:Visual Studio 2010/VC 10.0 SP1)解决它。
你能解释一下你已经做了什么来导入lib文件了吗? – 2013-02-12 15:53:30
您是否阅读过这样的内容:请勿将smile.lib作为项目设置中的附加链接器输入 - smile.h会处理这个问题吗? – duDE 2013-02-12 16:01:26
我在项目的C/C++专有中添加了具有libray的文件夹。然后也给链接器(这个动作发生在我问的问题中)。如果我没有链接为duDE所说的错误是“致命错误LNK1104:不可能的aprire il文件'smile_dbg.lib'” – Malo 2013-02-12 16:06:01