文档章节

libharu(1):windows下编译方法

moki_oschina
 moki_oschina
发布于 2016/07/06 16:33
字数 432
阅读 90
收藏 1

先给出我当前收集的有用链接。

// libharu在git的地址

https://github.com/libharu/libharu

// libharu的编译方法
https://github.com/libharu/libharu/wiki/Installation


// libharu--将2个png保存为pdf
http://blog.csdn.net/superlym2005/article/details/5834390

// libharu和pdflib 两种写pdf库文件使用心得
http://blog.csdn.net/cztjing/article/details/7789198

// 常见pdf开发库的讨论帖子
http://bbs.csdn.net/topics/360176044

 

 编译libharu,你需要libpng以及zlib。为了节省时间,如何下载编译libpng和zlib(你可以参考:http://kingsz1.iteye.com/blog/543787),这里不叙述。

1. zlib文件夹,libpng文件夹,lib文件夹,libharu文件夹

进入libharu文件夹,在vs2010的命令行下执行: nmake script/Makefile.msvc_dll

错误1:hpdf_streams.c
src\hpdf_streams.c(34) : fatal error C1083: Cannot open include file: 'zlib.h':
No such file or directory

办法:将Makefile.msvc_dll里面的“CFLAGS=/MD -nologo -O2 -Iinclude -Iwin32\include   -I"$(PNG_PREFIX)"\include -I"$(ZLIB_PREFIX)"\include -DHPDF_DLL_MAKE"修改为”CFLAGS=/MD -nologo -O2 -Iinclude -Iwin32\include   -I"$(PNG_PREFIX)" -I"$(ZLIB_PREFIX)" -DHPDF_DLL_MAKE“

然后再执行nmake script/Makefile.msvc_dll

 

错误2:LINK : fatal error LNK1181: cannot open input file 'libpng13.lib'

办法:将Makefile.msvc_dll里面的LDFLAGS= /LIBPATH:$(PNG_PREFIX)\lib /LIBPATH:$(ZLIB_PREFIX)\lib /LIBPATH:win32\msvc libpng13.lib zlib.lib改为”LDFLAGS= /LIBPATH:$(PNG_PREFIX)\lib /LIBPATH:$(ZLIB_PREFIX)\lib /LIBPATH:win32\msvc libpngd.lib zlibd.lib

因为我们编译的是debug版本,这里的2个lib为debug版本的。

所以还要将”CFLAGS_DEMO=/MD -nologo -O2 -Iinclude -Iwin32\include -D__WIN32__ -DHPDF_DLL“改为”CFLAGS_DEMO=/MD -nologo -O2 -Iinclude -Iwin32\include -D__WIN32__ -DHPDF_DLL -DLIBHPDF_DEBUG“

同时打开libharu\win32\include\hpdf_config.h文件,将里面的#undef LIBHPDF_DEBUG注释起来.

另外将libpngd.lib和zlibd.lib拷贝到libharu\win32\msvc下面

然后再执行nmake script/Makefile.msvc_dll

 

错误3:libhpdf.def : error LNK2001: unresolved external symbol HPDF_3DAnnot_Set3DView

将libharu\win32\msvc\libhpdf.def里面的HPDF_3DAnnot_Set3DView删除。

然后再执行nmake script/Makefile.msvc_dll

这样会在libharu下面生成libhpdfd.dll和libhpdfd.lib

 

 

 

编译release就简单多了,不需要考虑*d.lib, *d.dll等问题。

本文转载自:http://blog.csdn.net/oldmtn/article/details/39290555

上一篇: Opencv帧差法
下一篇: c++ 生成pdf
moki_oschina
粉丝 26
博文 202
码字总数 44864
作品 0
成都
程序员
私信 提问
求教:在Ubuntu环境下怎么利用LibHaru库测试pdf文件

求教:在Ubuntu环境下怎么利用LibHaru库测试pdf文件,以前没用过这个pdf库,老师突然让我研究一下这个pdf库,测试一下是不是大多数pdf文件都没有问题,还说多页的和扫描的也要测试,我完全不...

yifeisgj
2014/03/27
187
0
PHP生成PDF文件类库大全[开源]

虽然 PHP 有附 PDFlib ,不过使用起来实在有点复杂。 (PHP 说明文件中的范例) FPDF 虽然现在已经停止更新了,但 FPDF 可谓是元老级的 PDF 链接库,短短的几行程序就可以产生出 PDF 档案。最可...

mickelfeng
2013/08/29
0
1
在ubuntu环境下运行libharu软件出错,具体信息如下

在ubuntu环境下运行软件,按照如下命令进行: ./buildconf.sh 出现如下错误提示: 运行 出现如下错误: 请问,zlib的headers应该在哪个目录下?多谢

yifeisgj
2014/03/26
243
2
C的PDF生成工具包--libHaru

libHaru 是一个用来生成PDF文件的C语言开发包,支持生成包括线、文本、图片、轮廓、文本注释、链接注释、文档压缩、PNG和JPG图片嵌入、TrueType 字体、加密PDF、支持不同字符集、CJK字体和基...

匿名
2010/10/28
5.6K
1
命令行截图工具--Shot

Shot是一款命令行截图工具的软件。 特性: 跨平台: Windows GNU/Linux (X11 + XRandR) 多种区域选择方法: the whole desktop currently focused window currently focused monitor (establ...

匿名
2016/03/10
430
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring系列教程八: Spring实现事务的两种方式

一、 Spring事务概念: 事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败的话,那么事务就会回滚到最开始的状态,仿佛什么都没发生过一样。...

我叫小糖主
今天
5
0
CentOS 的基本使用

1. 使用 sudo 命令, 可以以 root 身份执行命令, 必须要在 /etc/sudoers 中定义普通用户 2. 设置 阿里云 yum 镜像, 参考 https://opsx.alibaba.com/mirror # 备份mv /etc/yum.repos.d/CentO...

北漂的我
昨天
3
0
Proxmox VE技巧 移除PVE “没有有效订阅” 的弹窗提示

登陆的时候提示没有有效的订阅You do not have a valid subscription for this server. Please visit www.proxmox.com to get a list of available options. 用的是免费版的,所以每次都提示......

以谁为师
昨天
3
0
Java设计模式之外观模式(门面模式)

什么是外观模式   外观模式(Facade),他隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口...

须臾之余
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部