qrc文件是一种资源文件,全称为Resource Collection Files
关于什么是qrc文件以及qrc文件的使用,在这就不做过多的介绍。
1.如何在makefile中设计规则读取qrc文件
利用QT的RCC命令处理qrc文件,此时会生成带前缀qrc_的cpp文件。
此时生成cpp文件内有“qInitResource_xxxxx”的字样,xxx的内容对应着rcc -name xxx中“xxx”的字符串,因此在对qrc文件处理时,我们需要获取到文件名,并将文件名作为name。
例如:$(QRC) -name style $^ -o $@
会生成一个cpp文件,其中包含qInitResource_style的字样。
作用:用于在qt代码中通过Q_INIT_RESOURCE(xxx)的方式启动资源文件。Q_INIT_RESOURCE(xxx)该命令就是找qInitResource_xxx函数。
#makefile
$(OBJ_DIR)/qrc_%.o : $(OBJ_DIR)/qrc_%.cpp
$(CC) -c $(CCFLAG) $^ -o $@
$(OBJ_DIR)/qrc_%.cpp : $(QRC_DIR)/%.qrc
$(QRC) -name $(basename $(nodir $^)) $^ -o $@
接下来的步骤就按照普通的编译流程进行。
在需要使用资源的时候,使用Q_INIT_RESOURCE(xxx)即可正常使用qrc资源。