QT 编译错误汇聚

编译提示

make: *** No rule to make target 错误原因、分析和解决办法

:-1: error: No rule to make target ‘wqLineItem.cpp‘, needed by ‘debug/wqLineItem.o‘.  Stop.

原来这个原因是丢失文件啊 ,终于明白了 ,看来网上的代码不可信

有个已有的Makefile,执行过程中出错:


[email protected] ~/develop/docbook/books/python_topic_str_encoding/src 
$ make html 
=============================== cleaning html ============================== 
rm -rf ../output/html/single/* 
make: *** No rule to make target ` ‘, needed by `../output/html/single/python_topic_str_encoding.html’.  Stop.

【解决过程】

1.换到别的,和当前文件夹等价的路径中去执行,结果却是正常的:


[email protected] ~/develop/docbook/books/python_topic_str_encoding/src 
$ cd ../../python_topic_web_scrape/src

[email protected] ~/develop/docbook/books/python_topic_web_scrape/src 
$ make html 
=============================== cleaning html ============================== 
rm -rf ../output/html/single/* 
=============================== generating html ============================== 
export XML_CATALOG_FILES="/home/develop/docbook/config_root/catalog/catalog.xml" && \ 
export XML_DEBUG_CATALOG=1 && \

……

2.后来折腾半天,最后终于发现,原来是由于,当前Makefile中的内容是:

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15


# also means main source file name

PROJECT_NAME = python_topic_str_encoding

SUB_SRC_FILES = \

    python_topic_str_encoding.xml \

    preface.xml \

    ch01_2x_vs_3x.xml \

    ch02_common_encoding_error.xml \

    ch03_other_common_case.xml \

    reference.xml \   

DOCBOOK_MAKEFILE_ROOT = ../../../config

################################################################################

# Include docbook makefile

################################################################################

include $(DOCBOOK_MAKEFILE_ROOT)/docbook.mk

其中,注意到,所依赖的

reference.xml \

后面还有几个空格的,截图才能看出来:

导致了此错误。

把最后的,多余的空格去掉:

就可以消除此问题了。

【总结】

Makefile在编译执行过程中,对于所依赖的条件,此处即一堆xml文件,最后一个是reference.xml,结果由于最后reference.xml后面,有多余的4个空格,导致Makefile将该处的4个空格,视为一个文件了,所以,必然找不到该“文件”,所以才报错的。

所以,如果Makefile出现:

make: *** No rule to make target ` ‘, needed by xxx. Stop.

的错误,那么基本上都是属于找不到所依赖的文件所导致的,所以应该去:

检测确保,所依赖的文件,是否真实存在。

很可能,很常见的一个现象就是,此处的,误写了多余的空格,导致被视为依赖文件,导致找不到,导致报此错误。

解决办法就很简单,去掉多余的空格即可。

时间: 2024-08-25 19:25:47

QT 编译错误汇聚的相关文章

Qt编译错误GL/gl.h: No such file or directory

最近把系统换成ubuntu14.04的了,在安装Qt后,我运行了里面的一个示例,发现编译有错: 其实我以前就遇到过这个问题,我当时给我的朋友写了一封邮件,他告诉我说是因为系统中没有安装OpenGL库导致的,所以我们要安装OpenGL库及其工具: 这个是他当时给我回的邮件,我发现我现在的系统中没有最后一个软件,可能是因为新系统换了比较新的软件源的关系吧.我的做法是运行这个命令 [email protected]:~$ sudo apt-get install freeglut3-dev 之后就可以

关于usr/bin/ld: cannot find -lxxx问题总结(Qt编译错误cannot find -lGL)

决定终结这个问题!(网上要想找到完整的解答实在太难了) http://blog.sciencenet.cn/blog-676535-541444.html 前两天手贱,把虚拟机玩崩溃了,只好重装虚拟机,把以前的工作再做一遍.在安装好qt-creator之后,编译程序遇到了下面这个错误 cannot find -lGL 百度了一下,找到的解决方法如下 sudo apt-get install libqt4-dev或者sudo apt-get install libgl1-mesa-dev或者sud

QT编译错误: multiple definition of `qMain(int, char**)'

QT使用过程中来回添加修改代码,结果出现了编译错误:error: multiple definition of `qMain(int, char**)' 一直看我的源文件是都哪里有错误,最后发现是在pro文件中出的问题,频繁的添加以及移除文件,导致HEADERS以及SOURCES中会重复添加 解决办法:把重复项删除! QT编译错误: multiple definition of `qMain(int, char**)' 原文地址:https://www.cnblogs.com/MakeView6

QT编译错误:cannot find file: *.pro

编译一个之前同事写的QT程序,结果出现了编译错误:cannot find file: *.pro 解决方法:将程序放在英文路径下 尽管出现一些红色的编译信息部门,但是最终还算是编译成功了~ 原文地址:https://www.cnblogs.com/MakeView660/p/10314022.html

Qt编译错误“GL/gl.h:No such file or directory”的解决方法

备注:1)操作系统:Ubuntu-14.04或12.042)Linux用户:root3)Qt版本:qt-linux-opensource-5.2.0-x86 为了迎接Qt的新纪元(从诺基亚移居到芬兰公司Digia家中),我决定将Qt开发环境升级到当前的最新版5.2,在安装好开发环境后,编译第一个工程的时候出现了如下错误:"GL/gl.h:No such file or directory",这是由于系统中没有安装OpenGL库导致的,于是在控制台中输入以下命令安装OpenGL库及其工具

QT编译错误信息大全及其解决方案

1 cannot open output file debug\ii.exe: Permission denied  答:应用程序输出窗口下面的程序还是在运行,只需要点击运行程序的X即可2. QApplication' has no member named 'setMainWidget'  答:Qt3版本的函数已经被抛弃. 使用QFile类创建文件失败的原因:创建模式的关系: 1.关闭项目显示列表,如何显示   答: 正下方有一个电话机的方框2.如何设置项目为当前的活动项目?   答:选择项目

在windows直接运行Qt编译出来的可执行程序出现了如下提示错误: this application has requested the runtime to terminate it an unusual way.

在windows直接运行Qt编译出来的可执行程序出现了如下提示错误: this application has requested the runtime to terminate it an unusual way. please contact the application’s support team for more information. 出现这种情况是因为缺少该程序运行所需要的动态链接库. 解决方法一:修改系统环境变量,在Path中添加Qt的bin路径就OK了.不过这只能在本机运

Linux Mint (应用软件:QT 5.X编译错误)

我们在前面介绍了如何安装QT,安装完后可以使用它编写QT程序.使用QT编写程序还是一如既往的好用,不过在编译QT程序的时候遇到了编译错误.当我们编译写好的QT应用程序时,提示"cannot find -lGL".下面是错误的截图: 其实该错误是因为链接时找不到OpenGL库,这说明我们的系统中缺少OpenGL库.不过,我们可以使用QT创建标准的C程序,这时候编译程序不会产生错误,因为标准的C程序不会使用OpenGL图形库. 既然是缺少OpenGL图形库造成了编译错误,那么我们在系统中安

MISP版本嵌入式QT编译时出现mips-linux-gcc command not found

configure的时候都没什么问题我的configure是:./configure -prefix /opt/qt-jz -xplatform qws/linux-mips-g++ -embedded mips  configure顺利的过了,但是当make的时候,出现了mips-linux-gcc :Commond not fount! 我装的是mipsl-linux-gcc ,而且已经交叉编译过了个hello world了.. make时出现的错误是:make[1]: Entering d