- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
请滚动到底部以列出更新的简短问题
我正在 build PoDoFo .在最后一步,我使用 cmake 为 PoDoFo 创建 Visual Studio 2010 .sln 文件。但是当我构建这个解决方案文件时,它找不到依赖库的头文件。例如,它没有找到 boost 库头文件。
c:\pdf\podofo-0.9.1\src\base\PdfDefines.h(66): fatal error C1083: Cannot open include file: 'boost/config.hpp': No such file or directory
如果我禁用 boost,对于 freetype 库 header 我会得到类似的错误
2>..\..\src\doc\PdfFontCache.cpp(55): fatal error C1083: Cannot open include file: 'ft2build.h': No such file or directory
这是我的 build.cmd 文件
del cmakecache.txt
set BOOST_ROOT=C:\pdf\boost_1_51_0_code
set BOOST_INCLUDE_DIR=C:\pdf\boost\boost_1_51_0\staging\include
set BOOSTLIBDIR=C:\workspace\lib\boost\boost_1_51_0\staging\lib
set FT_INCLUDE=C:\PDF\freetype-2.4.0\include\freetype
set FTDIR=C:\PDF\freetype-2.4.0\objs\win32\vc2008
set JPEGDIR=C:\PDF\jpeg-8d\Release\lib
set TIFDIR=C:\PDF\tiff-4.0.3\lib
set ZLIBDIR=C:\pdf\zlib-1.2.8
set BUILD_FLAGS="/MT"
cmake -G "Visual Studio 10" "C:\pdf\podofo-0.9.1" ^
-DCMAKE_CXX_FLAGS_RELEASE:STRING=%BUILD_FLAGS% ^
-DFREETYPE_INCLUDE_DIR=%FT_INCLUDE% ^
-DLIBJPEG_LIBRARY_RELEASE=jpeg ^
-DCMAKE_INCLUDE_PATH="%INCLUDE%;%BOOST_INCLUDE_DIR%;%FT_INCLUDE%;%FT_INCLUDE%\freetype;%JPEGDIR%\jpeg;%TIFDIR%\tiff;%ZLIBDIR%\zlib" ^
-DCMAKE_LIBRARY_PATH="%LIB%;%BOOSTLIBDIR%;%FTDIR%;%JPEGDIR%\lib;%TIFDIR%;%ZLIBDIR%\lib" ^
-DPODOFO_BUILD_SHARED:BOOL=FALSE ^
-DPODOFO_BUILD_STATIC:BOOL=TRUE ^
-DWANT_BOOST:BOOL=0 ^
-DLIBJPEG_LIBRARY_NAMES_RELEASE=jpeg ^
-DFREETYPE_LIBRARY_NAMES_RELEASE=freetype240MT ^
-DZLIB_LIBRARY_NAMES_RELEASE=zlibstat
我是 CMake 的新手,我不明白库依赖项如何传递到 Visual Studio 项目?。
这是生成的解决方案文件中路径的屏幕截图。我不明白这些路径是如何从小脚本文件中传递出来的?它们并不完全对应于 DCMAKE_LIBRARY_PATH
那么它们来自哪里?
如何修复解决方案文件中的这些包含错误?我尝试将这些路径添加到 Project Properites >> VC++ Directories >> 'Include Directories' 但它仍然不想构建。恐怕即使我消除了这些包含错误,我也会收到链接器错误,因为库路径也可能不正确。如何修复这些错误并构建项目?谢谢。
更新问题
我通过将路径更改为以下内容来修复包含错误:
FT_INCLUDE=C:\PDF\freetype-2.4.0\include\
现在正如我所料,我收到了很多链接器错误。但是我注意到它确实创建了 PoDoFo.lib 文件,所以现在我尝试在示例演示中使用它。我也成功编译了它,但我收到以下链接器错误:
1>podofo.lib(PdfFont.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>podofo.lib(PdfDifferenceEncoding.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>podofo.lib(PdfFontSimple.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>podofo.lib(PdfIdentityEncoding.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>podofo.lib(PdfFontTrueType.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>podofo.lib(PdfFontMetricsObject.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>podofo.lib(PdfEncodingObjectFactory.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
我确实确保在项目设置中添加了依赖库以及路径,但为什么我仍然会收到这些错误?
最佳答案
与其直接使用 nmake,我建议您使用 cmake-gui 来构建 PoDoFo。不要编写自己的 build.cmd,因为这在大多数情况下不起作用。注意:下面描述的方法使用你的方法,不要照搬它。使用 cmake-gui(如果您不知道 cmake 或 nmake 的工作原理)。
好吧,我建议您访问此站点并找到引用资料:Building static podofo with MSVS 2012好吧,我想这应该适用于 Visual Studio 2010。记住:
构建必备库 - 此站点还包含有关如何继续构建这些库的链接。但是,我假设您已经构建了它们。但是,我建议根据本教程再次构建它们。
Instructions : 照他说的做。不要错过任何关于预处理器定义、运行时库和所有相同参数的选项。如果您错过任何事情或做错了什么,这将迫使您从开始的地方重新开始。
错误:我自己在执行相同的过程时遇到了很多错误,这个网站没有提供任何解释。常见错误包括:
Unresolved external 问题(使用 msvcrt.lib 或 libcmt.lib)。在这种情况下,只需转至“链接器”>“输入”>“忽略特定库”并在此处命名该库即可忽略它。有时会出现随机错误。我建议查找 Stack Overflow 本身或 MSDN 或 Google,因为在开始时遇到 >2500 个错误后,我终于能够构建一个静态库。
不得已:如果一切都失败了,请联系我(如果您仍然感兴趣!)。
关于c++ - 如何修复从 cmake 生成的 Visual Studio 项目中包含的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20080598/
我经常使用 SSMS 查询数据和构建数据集,我的 IT 部门负责数据库管理。 最近我发现了 Azure Data Studio,我喜欢: 智能感知 源代码控制(例如使用 Git) 来自社区的扩展 SQ
我想根据我使用的 visual studio 版本编译不同的东西,比如 #if VISUAL_STUDIO_VERSION > 2015 eventH?.Invoke(this, EventArgs.
我们的开发团队计划从 visual studio 2005 升级到 visual studio 2010 -- 跳过 visual studio 2008。 大部分项目是VB ASP.NET项目,使用
我的Visual Studio 2015无法构建2010平台工具集。它说: The build tools for Visual Studio 2010 (v100) cannot be found.
我目前正在使用 Visual Studio 2015 来编程 ASP.NET Core 应用程序。我对安装 Visual Studio 2017 有以下疑问: 什么被认为是最佳实践和/或最干净的方法?
尝试从扩展和更新获取 Visual Studio 扩展时,出现以下错误:- 向 visualstudiogallery.msdn.microsoft.com/Services/VStudio/Exte
这个问题在这里已经有了答案: Can Visual Studio Code and VS 2012 be installed on same computer? (1 个回答) 关闭去年。 在安装了
作为标准安装的一部分,Visual Studio Code 带有一个名为“Monokai Dimmed”的颜色主题。 有没有办法将它移植到 Visual Studio 2015?我检查了社区主题( h
我想开始编程 CUDA。 我已经安装了 Visual Studio 2010 Express。 我还安装了 nVidia nSight Visual Studio。 而且我具备所有常见的先决条件(Ne
Visual Studio Community Edition是否可以使用Visual Studio Online帐户上的存储库? 我一直为包含在Online帐户中的Visual Studio Onl
我有一个我一直在开发的应用程序,但在 android studio 上遇到了问题。当我点击“build->run”然后选择我的设备时,应用程序永远不会在我的手机上运行(并且自动出现的android-s
我正在使用Visual Studio2010。我面临的一个问题是,当我创建一个新的Web项目时,Visual Studio将创建该项目,并且不会在解决方案资源管理器中显示其解决方案。 另一件事是,我想
我通读了这里的许多帖子,却找不到一个有效的明确答案。因此,在花了一些时间使它生效之后,我认为应该发布它。 问题:发布配置文件将建立在服务器上,但不会发布。 解: 确保已安装Microsoft Wind
我正在尝试使用Visual Studio 2012构建针对.NET 3.5的C++ CLI应用程序。 通过安装Visual Studio 2008,并指定v90平台工具集,我已经在一台机器上进行了这项
我在 Microsoft Visual Studios 2013 中有一个项目,我想在 Microsoft Visual Studios 2010 中打开它。有什么简单的方法吗?还是我必须在2010年
我想知道,如果我发送一个解决方案文件夹(它是用 visual studio C# 编写的),您可以在 visual studio for mac 中打开解决方案吗? 在visual studio 20
有没有办法在 Visual Studio Code 和 Visual Studio 中设置相同的快捷方式(而不必每次都手动更改它们)? 例如,我在 Visual Studio Code 中经常使用 A
我刚开始了解 Visual Studio Code。我想知道,我可以将 Visual Studio 替换为所有 .NET 开发相关的工作吗? 我可以节省 Visual Studio 许可的成本吗? V
我安装了具有有效许可证(Visual Studio 订阅)的 Visual Studio 2019 企业版(VS 2019 16.1.4),它运行良好。 突然之间,当我尝试打开项目或项目中的任何文件时
我一直在使用 Compass 编译 Windows 环境中的 sass 文件,无论是在命令行上还是使用 Compass-app 来查看目录。 我刚刚开始使用 Visual Studio(专业版 201
我是一名优秀的程序员,十分优秀!