c++ - qInitResources() 上的 Qt 链接器错误 LNK2019 - RCC

标签 c++ qt linker-errors rcc

我想在 Visual Studio 2010 中使用 Qt 编译一个项目。 我已经构建了所有必备库并将它们链接到项目属性中。

我还使用以下命令从 project.qrc 文件 (rcc) 生成了 .cpp 文件:

rcc project.qrc -name project -o qrc_project.cpp

按照 http://www.qtcentre.org/archive/index.php/t-3425.html 中的说明进行操作.

project.coo 文件由以下行生成:

    int QT_MANGLE_NAMESPACE(qInitResources_project)()
    {
        QT_PREPEND_NAMESPACE(qRegisterResourceData)
            (0x01, qt_resource_struct, qt_resource_name, qt_resource_data);
        return 1;
    }
    
    Q_CONSTRUCTOR_FUNCTION(QT_MANGLE_NAMESPACE(qInitResources_project))

我还在项目中包含了 .cpp 文件。 虽然,我收到以下错误:

> Error 2611    error LNK2019: unresolved external symbol "int __cdecl
> qInitResources_project(void)" (?qInitResources_project@@YAHXZ)
> referenced in function main   D:\usr\Windows\main.obj project

我是不是对 rcc 做错了什么?有人可以帮忙吗?

最佳答案

我通过生成一个 .rcc 文件和一个 .cpp 文件解决了我的问题,都带有项目的名称,而不是开头的“qrc_”。我还在我的项目中链接了这两个文件。

编译器似乎找不到正确的文件,这就是我出现链接错误的原因。

我用来生成上述文件的命令是:

  1. rcc -binary <path_to_qrc_file>.qrc -o <path_and_filename>.rcc

  2. rcc <path_to_qrc_file>.qrc -name <project_name> -o <path_and_filename>.cpp

关于c++ - qInitResources() 上的 Qt 链接器错误 LNK2019 - RCC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41185978/

相关文章:

python - 使用 PySide 获取一个或多个连接表中的值

c++ - TDateTime 链接错误

python - cython return 语句给出了一个内置方法而不是整数

c++ - 使用 X11、XDamage、XRender 和其他技巧保留屏幕内容的 QPixmap 拷贝

c++ - 如何检索轮廓点 - 使用 opencv 转换为 vector ?

c++ - Q_ENUMS 在 QML 中是 "undefined"吗?

尝试静态链接 VS 9 Express 时 C++ POCO 库链接错误

java - LuaJava编译错误 "Unresolved external symbol"

c++ - 如果我实例化一个 DLL 类,是否会发生此内存问题?

c++ - C++类对象的总内存