QT CREATOR - 我在哪里放置/NODEFAULTLIB:library?

6
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 放在哪里?


可能是解决LNK4098:defaultlib 'MSVCRT'与的重复问题。 - Mgetz
@Mgetz 我应该把 /NODEFAULTLIB:library 放在哪里? - rreeves
@Mgetz,我在Qt Creator 2.6.2中找不到任何链接器设置。 - rreeves
1
这可能已经在Qt FAQs中涵盖。但是,如果您需要添加编译器选项,以下是方法。 - Son-Huy Pham
1
你拼写的库名称不正确,供你参考。 - Son-Huy Pham
显示剩余2条评论
3个回答

4
有人在Qt论坛上发了一个和你类似的问题,可以参考一下这个链接。看起来传递一个附加选项应该会有所帮助。
所以,在你的.pro文件中:
// This
QMAKE_CXXFLAGS += /MD

// Or that
QMAKE_CXXFLAGS += /MT

别忘了运行qmake,以确保makefile参数吸收对.pro文件所做的更改。


感谢您的帮助!虽然这个方法没有成功,但它帮助我找到了解决方案。 - rreeves

4
据我所知,这是一个未记录的功能,但这是在QT Creator 2.6.2 w/ QT 4.8.4中放置它的位置(在.pro文件中)。
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../LIBRARYNAME/Lib/ -lLIBRARY /NODEFAULTLIB:library

1
这并不是一个未记录的功能,而更多地是将额外参数传递给编译器/Makefile的“不太明显的方式” - 但无论如何都要祝贺! - Son-Huy Pham

1

这是我在Qt5下的做法:

QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMT

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接