xmake icon indicating copy to clipboard operation
xmake copied to clipboard

qt 调试不设置 set_runtimes("MTd") 或者 set_runtimes("MDd") 退出时会报异常

Open car520120 opened this issue 2 years ago • 1 comments

Xmake 版本

2.6.9

操作系统版本和架构

win10

描述问题

image

期待的结果

正常退出

工程配置

No response

附加信息和错误日志

No response

car520120 avatar Aug 22 '22 11:08 car520120

这好像跟 xmake 也没啥关系吧,你可以到 Qt 那边去反馈下。。如果 Qt Creator / qmake 带 MT 编译运行正常,那就自己对比下 flags

我这也没 win qt 环境去调这个。

waruqi avatar Aug 23 '22 02:08 waruqi

我最近在用xmake编译Qt的时候也有这个问题,我如果用MT编译,程序就到这里QString::toStdString就会崩溃,如果我设置成MD,系统可以运行,但是明细结果不对 一般情况下,用Qt的安装软件直接安装的都是MD版本,不知道是不是还少了什么编译参数,导致这个情况。

add_rules("mode.debug", "mode.release")
set_runtimes("MD")

target("xmakeproject")
    add_rules("qt.console")
    add_files("src/*.cpp")
#include <QCoreApplication>
#include <QString>

int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);

    QString a = "测试Xmake Qt工程";
    std::string b = a.toStdString();
    return app.exec();
}

image

scially avatar Nov 01 '22 11:11 scially

不知道,你可以自己对下 flags 调下,我暂时没 win qt 环境。

waruqi avatar Nov 01 '22 13:11 waruqi

不知道,你可以自己对下 flags 调下,我暂时没 win qt 环境。

好吧 我试试 xmake怎么查看编译的flags

scially avatar Nov 01 '22 14:11 scially

不知道,你可以自己对下 flags 调下,我暂时没 win qt 环境。 @waruqi 搞不定…… flgs看着好像没差别了 除了/MD,能帮忙看看么。

scially avatar Nov 02 '22 06:11 scially

不知道,你可以自己对下 flags 调下,我暂时没 win qt 环境。 @waruqi 搞不定…… flgs看着好像没差别了 除了/MD,能帮忙看看么。

@waruqi 确实是,如果用的是msvc,qt.console要设置MD 或者 MDd

scially avatar Nov 16 '22 02:11 scially