【问题标题】:How to install and add libpng to my Qt project on Windows如何在 Windows 上安装 libpng 并将其添加到我的 Qt 项目中
【发布时间】:2019-08-28 00:05:21
【问题描述】:

我的 Qt 课程需要使用 libpng。但我不知道如何在 Windows 上安装和使用 Qt。

尝试用 MinGw 安装

首先,我从官方网站下载了 libpng 和 zlib。然后我尝试用 MinGw 安装它,./configure CFLAGS='-O2' CXXFLAGS='-O2' --prefix=/mingw 这个命令执行得很好,但是后来我遇到了问题.输入 makemake install 后,我遇到了以下问题。我不知道如何修复它以及它的实际含义,因为我从未遇到过来自 makefile 的错误。

尝试通过应用安装

我找到了一个在 Windows 上安装 libpng 的应用程序:http://gnuwin32.sourceforge.net/packages/libpng.htm。它奏效了,我安装了一个库,得到了我的 lib 文件和头文件。然后我去了我的 Qt 项目,并通过指向 lib 文件的路径和头文件的路径添加了一个库。现在我将 png.h 包括在我的课堂上,一切似乎都很顺利,直到我尝试使用一些功能。 Qt 编写了类似这样的没有用于调用 png_sig_cmp 的数学函数。但更有趣的是,当我使用库中的变量类型时,它实际上并没有显示错误,例如 png_byte

//messege from MinGw after typing make and make install
rm -f pnglibconf.c pnglibconf.tf[45]
gawk -f ./scripts/options.awk out=pnglibconf.tf4 version=search\
            ./pngconf.h ./scripts/pnglibconf.dfa\
            ./pngusr.dfa  1>&2
gawk -f ./scripts/options.awk out=pnglibconf.tf5 pnglibconf.tf4 1>&2
options.awk: bad line (10): com
make: *** [pnglibconf.c] Error 1

我希望在我的磁盘上安装库,并能够快速将其包含在其他 IDE 中的其他项目中。

【问题讨论】:

标签: c++ qt libpng


【解决方案1】:
  1. 对于您的构建问题,Google 搜索结果:https://github.com/aseprite/aseprite/issues/1054#issuecomment-335846694

  2. 假设您构建的不是 libpng,而是 libcurl,就像我之前使用 mingw 编译器所做的那样, 然后在 Qt 项目文件中使用 libcurl:

win32 {

    ## Windows common build here

     win32-g++:contains(QMAKE_HOST.arch, x86_64):{
        message("x86_64 build")
        INCLUDEPATH += C:\QT64\Lib64\curl-7.40.0-devel-mingw64\include
        LIBS += C:\Qt64\Lib64\curl-7.40.0-devel-mingw64\lib64\libcurldll.a
        # Win64 specific build here

     } else {
             message("x86 build")
             INCLUDEPATH += C:\QT\Lib\curl-7.40.0-devel-mingw32\include
             LIBS += C:\Qt\Lib\curl-7.40.0-devel-mingw32\lib\libcurldll.a
             #Win32 specific build here
            }
}

【讨论】:

  • 我已经成功安装了库,但现在我遇到了另一个问题。当我尝试制作我的项目时,我收到以下警告:warning lnk4098 defaultlib libcmtd conflict with use of other libs;使用 /nodefaultlib:library。我在互联网上搜索了解决方案,但没有一个能帮助我。
  • 检查这个:qtcentre.org/threads/…
猜你喜欢
  • 2014-12-18
  • 2019-05-10
  • 2020-03-31
  • 2011-03-27
  • 1970-01-01
  • 1970-01-01
  • 2023-03-16
  • 2023-01-14
  • 1970-01-01
相关资源
最近更新 更多