Qt5.7.0 mingw+qwtplot3D 编译

2023-05-16


一、基本编译问题

在安装的过程中却遇到了很多的问题。咨询了Google中大量的帖子,发现按照他们说的方法根本没法解决我的实际问题。研究了整整宝几天,总算是编译通过,解决了所有的问题。下面将通过重现我的安装编译过程,及解决问题的方法来告诉大家如何才能正确的编译qwtplot3D开发库。

1、从网上下载qwtplot3D的最新版本:http://qwtplot3d.sourceforge.net/

2、解压qwtplot3d-0.2.7.zip到C盘根目录下(注意:路径中不能带有中文汉字)。

3、打开C:\qwtplot3d-0.2.7\qwtplot3d,将会看到qwtplot3d.pro文件。

4、用QtCreator打开qwtplot3d.pro文件,并执行编译命令会出现如下如下错误:No rule to target ‘Makefile.Debug’. Stop.

解决方法: 双击并打开上图左侧中的qwtplot3d.pro文件,修改该文件部分内容: win32:TEMPLATE = vclib
修改为: win32:TEMPLATE = lib

5、修改完成后,再次点击编译运行。会再次出现错误:’stderr’ was not declared in this scope 和 ‘fprintf’ was not declared in this scope。 如下图所示:

解决方法: 打开左侧Source->src->qwt3d_function.cpp文件。并在顶部添加语句: #include “stdio.h”

6、再次编译。即可顺利完成qwtplot3d工程的编译,不会再遇到错误。此时,打开C:\qwtplot3d-0.2.7\qwtplot3d\lib文件夹。会看到生成两个动态库文件:libqwtplot3d.a和qwtplot3d.dll。这就是编译好的qwtplot3d的动态库文件。作为开发而言,就可以直接使用。当然,我们不仅仅是希望编译生成动态库,还希望将qwtplot3d自带的Demo编译并运行通过。没问题,继续看下面的。


二、我碰到的编译问题

上面6个步骤为网上的主要解决方案,这里我碰到的是可以找到各个include文件,但是为引用的lib文件未找到,报错如下:

\qwtplot3d\src\qwt3d_axis.cpp:120: error: undefined reference to `_imp__glBlendFunc@8'
\tmp\qwt3d_axis.o:-1: In function `ZN5Qwt3D4Axis8drawBaseEv':
\qwtplot3d\src\qwt3d_axis.cpp:178: error: undefined reference to `_imp__glBegin@4'
\qwtplot3d\src\qwt3d_axis.cpp:179: error: undefined reference to `_imp__glVertex3d@24'
\qwtplot3d\src\qwt3d_axis.cpp:180: error: undefined reference to `_imp__glVertex3d@24'
\qwtplot3d\src\qwt3d_axis.cpp:181: error: undefined reference to `_imp__glEnd@0'
//...
//外加300+的错误

把Google翻阅好几遍,总于看到引用opengl相关的,原因是没有引入gl相关的库文件,但是这个文件名称不是按照套路来,是libgl.a或者gl.lib之类的,是OpenGL32.a,猝不及防啊!!

需要在qwtplot3d.pro下加入:

LIBS += -lopengl32 -lglu32 -lglut

再编译就没问题了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt5.7.0 mingw+qwtplot3D 编译 的相关文章

  • libtool:i686-pc-mingw32 共享中不允许未定义的符号

    我正在使用自动工具作为我的库的构建系统 最近库被移植到Windows 尽管我遇到了一个奇怪的错误 但库编译和链接成功 配置和make后只有静态库 除了警告之外 一切看起来都很好libtool libtool undefined symbol
  • Qt 颜色选择器小部件?

    我有一个QDialog向用户提供一些选项供其选择的子类 这些选项之一是颜色 我见过QColorDialog https stackoverflow com a 1972272 2062384 我需要一些更简单的东西 这也是一个常规小部件 这
  • 使用 Qt Creator 的 C++0x

    我正在尝试使用新的 C 0x 功能Qt创建者 http en wikipedia org wiki Qt Creator在 Windows 下 Qt Creator 2 0 1 我读了主题在 Qt Qt Creator 和 QMake 中配
  • 如何向 QFileSystemModel 添加自定义角色

    我想向 QFileSystemModel 添加自定义角色 可能是派生模型 我想使用此角色来保存复选框的选中状态 该状态显示在自定义委托中的文件名旁边 如何才能做到这一点 我已经使用过使用示例Qt Quick Controls 文件系统浏览器
  • find_library 选择静态库而不是共享库

    This 之前曾被问过 https stackoverflow com questions 3537588 issue on using cmake with msys mingw linking dll files using devil
  • 设置Loader项目属性

    In the context https stackoverflow com questions 33513546 delegate folderlistmodel in tableview文件管理器 我有一个TableView组件保存在文
  • 我需要帮助尝试使用 MinGW 编译 GLFW 的简单示例

    我正在尝试从 GLFW 的文档中编译一个示例 我的库和源文件的文件夹结构是 C cpp glfw3 dll glfw3dll a libglfw3 a test cpp include GLFW glfw3 h glfw3native h
  • 如何在QML中设置弹出菜单位置

    我想修复 QML 中弹出菜单的位置 当我单击设置按钮时 我希望弹出菜单将显示在固定位置 我用了一天的时间就做到了 但是做不到 我怎样才能在 QML 中做到这一点 另外 我想更改菜单项的大小 宽度和高度 希望您的帮助 这取决于QtQuick
  • 按索引列出的 QML 模型数据

    我有基于 QAbstractListModel 的模型 class RecordModel public QAbstractListModel QQmlContext ctxt engine rootContext ctxt gt setC
  • 从 MINGW 启动时运行 System32 程序而不是 SysWOW64

    我正在尝试从从 minggw 启动的 shell 脚本文件创建 EXE 文件 从 gi t bash 使用 我的问题是当我运行这些命令时 C Windows system32 iexpress exe N C git install 64b
  • MinGW 作为可靠的 64 位 GCC 编译器

    我担心 64 位 MinGW 编译器作为 Visual C 编译器的替代品的可靠性 例如 假设 C 代码使用 GCC 4 6 2 在 Linux 下完美构建和运行 相应的 MinGW 是否会在 64 位 Windows 下生成类似可靠的可执
  • mingw32-make 尝试创建子文件夹 .lib 为非法名称

    我正在尝试编译一个需要 freetype 库的项目 所以我正在弄清楚如何将 freetype 安装到 mingw32 更安全的方法是编译它 无论如何 问题是编译 freetype 2 4 11 我进入了msys中提供的bash 我做到了 c
  • 无法使用 MinGW C++ 在 NetBeans IDE 7.3 中编译“Hello World”

    我正在尝试制作一个简单的 Hello World 在 NetBeans IDE 7 3 中使用 MinGW 作为我的 C 编译器来编写程序 我遇到了构建失败的情况 但我不知道为什么 这是我的编译器设置 Family MinGW 基本目录 C
  • OpenGL 与 Eclipse CDT + MinGW + GLEW + GLFW:未定义的参考

    Edit 与此同时 我已经弄清楚了这一点 并在下面写了详细的答案 我刚刚尝试在 Win7 上从 Express 版本的 MSVC 10 切换到 Eclipse CDT 在配置时遇到了以下简单 OpenGL 代码的问题 在 Visual St
  • 在 QtCreator 中将 OpenCV 2.3 与 Qt 结合使用

    随着 OpenCV 2 3 版本终于发布 我想在我的系统上编译并安装这个最新版本 由于我经常使用 Qt 和 QtCreator 我当然希望能够在我的 Qt 项目中使用它 我已经尝试了几种方法几个小时 但总是出现错误 第一次尝试 使用WITH
  • 代码块 - 使用大地址感知标志进行编译

    如何使用以下命令在 64 位系统上编译 32 位应用程序LARGE ADRESS AWARE使用代码块标记 我需要使用超过 2GB 的内存 应该是添加的情况 Wl large address aware到链接标志 我不使用 CodeBloc
  • Windows 应用商店应用程序可以用 Mingw 构建吗?

    有没有办法构建 Windows 应用商店应用程序Mingw http mingw org 工具链 最终交叉编译 http mxe cc 它们来自 Linux 上的 mingw 因为如果它在一个 Mingw 工具链中工作 它也应该在另一个工具
  • Qt mouseReleaseEvent() 未触发?

    我有一个显示图片的库 我们称之为 PictureGLWidget 其中 class PictureGLWidget public QGLWidget 所以 PictureGLWidget 扩展了 QGLWidget 在PictureGlWi
  • 错误 LNK2001:无法解析的外部符号 __CxxFrameHandler3

    我正在将 Qt 从 VS 2013 迁移到 Qt 5 10 1 到 VS 2015 出现以下多个链接错误 error LNK2001 unresolved external symbol CxxFrameHandler3 error LNK
  • 使用 Visual Studio 2013 构建 Qt 5.2.1 的静态版本

    几天来我一直在尝试使用 Visual Studio 2013 构建 Qt 的静态版本 我就是不明白我做错了什么 System Windows 7 64 位 Visual Studio 2013 仍安装 Visual Studio 2012

随机推荐