मैं एक तृतीय पक्ष लाइब्रेरी संकलित कर रहा हूं और लाइब्रेरी में मौजूद चेतावनियों को ठीक करने की परवाह नहीं करता, लेकिन मैं नहीं चाहता कि वे अंक क्यूटी निर्माता में अंक प्रदूषित करें।अक्षम करें -एक क्यूटी परियोजना में सभी संकलक चेतावनियां?
मैंने here सलाह का पालन करने का प्रयास किया है, लेकिन -Wno-enum-compare
के साथ सक्षम होने के बाद -Wall
को अक्षम करने के लिए कोई कंपाइलर ध्वज नहीं है।
this पढ़ने के बाद, मैं बहुत की तरह झंडा को हटाने की कोशिश की:
CFLAGS -= -Wall
लेकिन है कि या तो काम नहीं किया। फिर भी
QMAKE_CXXFLAGS_WARN_OFF -= -Wall
कुछ भी नहीं: तो मैं this advice की कोशिश की।
तो मैं उत्पन्न Makefile
में देखा और यह पाया:
CFLAGS = -pipe -g -fPIC -Wall -W -D_REENTRANT $(DEFINES)
CXXFLAGS = -pipe -g -fPIC -Wall -W -D_REENTRANT $(DEFINES)
तो मैं उन दो चर से ध्वज को हटाने की कोशिश की:
CFLAGS -= -Wall
CXXFLAGS -= -Wall
फिर भी कुछ नहीं। आप इस कंपाइलर ध्वज को कैसे हटा सकते हैं ?!
गैर-हैकिश तरीका शायद 'CONFIG + = warn_off' है। डिबगिंग के एक सामान्य तरीके के रूप में "यह चर/विकल्प/कहां से आ रहा है?", आप 'qmake -d', 'qmake -d -d', आदि चला सकते हैं; यह आपको कई उपयोगी संकेत देगा। – peppe
@peppe बहुत बढ़िया - धन्यवाद। मैं इस से पूरी तरह से अनजान था! –