在处理Caffe或Visual Studio项目时,若需调用外部动态库,应先在项目属性中配置头文件与lib文件的路径。编译完成后,为确保程序正常运行,还需将所依赖的dll文件复制到生成的可执行文件所在目录。
1、 右键点击项目属性,进入配置属性中的VC++目录,将包含目录和库目录均设为继承父级或项目默认设置。
2、 在项目属性中,右键点击项目并选择属性,进入C/C++选项卡下的常规设置,在附加包含目录中添加所需include文件夹的路径,完成头文件的引用配置。
3、 若不清楚具体需要包含哪些头文件,可先尝试编译项目。在编译过程中,系统会提示相关错误信息,通过这些提示可明确缺失的头文件名称。例如,当前错误提示显示缺少gflags/gflags.h文件。此时应查找该头文件所在的实际路径,示例中的路径为:D:NugetPackagesgflags.2.1.2.1uild ativeinclude。需特别注意,错误信息中指出的是gflags/gflags.h,意味着该文件位于名为gflags的子目录下,因此在配置包含路径时,应添加的是其上级目录,即包含gflags文件夹的路径,而非直接指向头文件本身。正确设置后,再次编译项目即可消除此类包含错误。
4、 将路径 D:NugetPackagesgflags.2.1.2.1uild ativeinclude 改为使用相对引用方式,避免绝对路径带来的兼容性问题。
5、 将D盘NugetPackages目录下的gflags.2.1.2.1版本中的build文件夹内include子目录添加到项目中即可正常使用。
6、 右键点击项目选择属性,进入链接器的常规设置,在附加库目录中添加lib文件夹所在路径即可完成配置。
7、 操作方式与处理头文件类似,在点击生成时系统会提示错误,显示缺少libglog.lib文件。此时需在NuGetPackages文件夹中查找该文件的具体位置,例如路径为D:NuGetPackagesglog.0.3.3.0uild ativelibx64v120Releasedynamic。找到后,将此完整路径添加至项目设置中的附加库目录选项内,完成配置。重新生成项目即可成功识别所需库文件,消除链接错误,确保程序正常编译与运行。
8、 点击菜单栏中的调试选项,选择启动调试后出现错误提示,原因是生成的lenet_test.exe在运行时无法找到所需的dll文件。需将Caffe生成目录下Debug文件夹中相关的dll文件复制到与lenet_test.exe相同的目录中,以确保程序正常运行。
9、 重新启动调试,操作成功完成。
评论
更多评论