【问题标题】:QT CREATOR - where do I put the /NODEFAULTLIB:library?QT CREATOR - 我应该把 /NODEFAULTLIB:library 放在哪里?
【发布时间】:2013-06-26 14:55:58
【问题描述】:

QT 给出错误

LNK4098: defaultlib 'MSVCRTD' conflicts with use of other libs; use /NODEFAULTLIB:library
LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library

我应该把 /NODEFAULTLIB:library 放在哪里?

【问题讨论】:

标签: c++ qt linker


【解决方案1】:

有你的问题的人在Qt forums a while back 上发布了一些东西。

这听起来像是传入 additional options should help 之一。

所以在你的 .pro 文件中:

// This
QMAKE_CXXFLAGS += /MD

// Or that
QMAKE_CXXFLAGS += /MT

不要忘记运行 qmake 以确保 makefile 参数吸收对 .pro 文件所做的更改。

【讨论】:

  • 感谢您的帮助!这没有解决,它帮助我弄清楚了。
【解决方案2】:

据我所知,这是一个未记录的功能,但这是您将其放入带有 QT 4.8.4 的 QT Creator 2.6.2(在 .pro 文件中)的位置

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../LIBRARYNAME/Lib/ -lLIBRARY /NODEFAULTLIB:library

【讨论】:

  • 这不是一个未记录的功能,而只是将附加参数传递给编译器/makefile 的一种“不太明显的方式”——但无论如何恭喜!
【解决方案3】:

这就是我在Qt5下的做法:

QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMT

【讨论】:

    猜你喜欢
    • 2020-09-30
    • 2016-08-25
    • 2013-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-24
    • 2017-11-30
    • 2016-12-21
    相关资源
    最近更新 更多