解决Qt SDK编译affine示例时的error: cannot find -ldemo_shared问题
5星 · 超过95%的资源 需积分: 50 134 浏览量
更新于2024-09-15
收藏 691B TXT 举报
当在Windows 7环境下使用Qt 4.8.2 SDK进行affine等demo的编译时,可能会遇到`error: cannot find -ldemo_shared`这样的错误。这个错误通常发生在链接阶段,意味着编译器无法找到名为`demo_shared`的共享库。以下是一些解决此问题的步骤:
1. 首先,问题在于`arthurwidgets.cpp`文件中的`#include <private/qpixmapdata_p.h>`行。这个头文件可能包含了一些动态链接的依赖,而在你的环境中,你正在使用静态编译的Qt版本(如e:\qt\4.8.2\qmake\qmake.exe,对应于Qt 4.8.0的Static Release)。因此,为了能够编译,你需要临时注释掉这一行,以避免编译过程中的冲突。
2. 接下来,在Qt 4.8.2的Command Prompt环境中(E:\QtSDK\Demos\4.7\shared路径下),执行`qmake -config release`命令。这将配置你的项目为release模式,并创建一个静态库`libdemo_shared.a`。`ar: creating release\libdemo_shared.a`这条消息表明编译过程已经成功创建了静态库。
3. 然后,当你在Qt Creator中打开并尝试编译affine.pro项目时,由于之前的步骤,你需要确保使用与E:\QtSDK\Demos\4.7\shared中相同的qmake工具进行编译,因为这可以保证正确地处理库的链接。如果不这样做,可能会导致链接错误。
按照这些步骤操作后,你应该能够解决`error: cannot find -ldemo_shared`的问题,顺利编译和运行affine demo。然而,长期来看,为了避免此类问题,建议检查你的Qt环境设置,确保所有依赖项都正确配置为静态或动态链接,并且Qt版本与SDK中其他组件兼容。如果需要动态链接,可能需要重新编译Qt库或者调整项目的构建配置。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-05-22 上传
2021-05-29 上传
2021-10-02 上传
2022-09-22 上传
2022-07-15 上传
2022-07-14 上传
海空
- 粉丝: 43
- 资源: 23
最新资源
- myeclipse快捷键大全
- Sun云计算指南(中文)
- C#程序员基础必备 c#教程
- 给定三维空间的坐标,找出这个三维空间中的洞
- QTP中一些基础代码的积累
- POWERPCB完全教学.txt
- 如何用VC++6.0 MFC 实现计算器.txt
- 常用电子元器件参考资料
- sun.pdfsun.pdfsun.pdfsun.pdf
- PCF8563 日历时钟芯片原理及应用设计
- 用单片机控制直流电机
- Thinking in Java简体中文第2版
- VSS2005之Explorer功能及技巧
- VSS2005之Administrator功能及技巧
- c8051f控制比例电磁铁
- 多核处理器大规模并行系统中的任务分配问题及算法