2013-01-21 26 views
9

मैं वर्तमान में आईओएस प्रोजेक्ट के लिए जेएक्सिंग लाइब्रेरी का उपयोग करने की कोशिश कर रहा हूं। हालांकि मैं नमूना परियोजनाओं को काम करने के लिए भी नहीं मिल सकता।जेएक्सिंग लाइब्रेरी: आईओएस में त्रुटियां: निजी फ़ील्ड 'cached_y_' का उपयोग नहीं किया जाता है

स्कैनटेस्ट प्रोजेक्ट, साथ ही जिन लोगों ने मैंने स्वयं बनाया है, वे BinaryBitmap.cpp फ़ाइल में निम्न त्रुटि फेंक देते हैं।

In file included from /Volumes/Macintosh HD/Users/Tim/Downloads/zxing-2.1/iphone/ZXingWidget/../../cpp/core/src/zxing/BinaryBitmap.cpp:20: 
../../cpp/core/src/zxing/BinaryBitmap.h:33:7: error: private field 'cached_y_' is not used [-Werror,-Wunused-private-field] 
      int cached_y_; 
       ^
1 error generated. 

मैंने Google और Stackoverflow पर खोज की, लेकिन समस्या का समाधान नहीं मिला है।

मैंने एक्सकोड और बीटा की वर्तमान स्थिर रिलीज दोनों के साथ इसे आजमाया है।

मुझे नहीं पता कि किसी और को यह समस्या भी मिली है, लेकिन किसी भी मदद की सराहना की जाएगी।

+1

इसका क्या अर्थ है कि उस विशेष डेटा सदस्य का कभी भी उपयोग नहीं किया जाता है (आश्चर्यजनक रूप से पर्याप्त)। यह स्वयं में कोई त्रुटि नहीं है, आप आमतौर पर केवल एक चेतावनी प्राप्त करेंगे (क्योंकि आप शायद इसका उपयोग करने के लिए मतलब था)। विकल्प '-वायरर' का मतलब चेतावनियों को त्रुटियों में बदलना है। मुझे नहीं पता कि आप उदाहरणों को संकलित करने का प्रयास कैसे कर रहे हैं, लेकिन शायद आपको कंपाइलर विकल्पों को बदलने की आवश्यकता है। – BoBTFish

+0

@BoBTFish धन्यवाद :) दो संकलक झंडे को हटाने से समस्या हल हो गई। यदि आप इसे उत्तर के रूप में पोस्ट करते हैं, तो मैं इसे चुनूंगा। –

उत्तर

19

यह क्लैंग है, है ना? आप संबंधित कंपाइलर विकल्प here के बारे में पढ़ सकते हैं। त्रुटि संदेश आपको बता रहा है कि कौन से कंपाइलर झंडे प्रासंगिक हैं।

-Wunused-private-field का मतलब है कि आपको कक्षाओं (या structs, ...) के निजी सदस्य फ़ील्ड के बारे में चेतावनियां मिलती हैं जिनका उपयोग कहीं भी नहीं किया जाता है। चेतावनी इसलिए है क्योंकि आप शायद उनका उपयोग करने का मतलब रखते थे। यह आमतौर पर संकलन को रोक नहीं पाएगा, लेकिन ...

-Werror त्रुटियों में चेतावनियां बदलता है। बहुत से लोग स्वयं को बहुत साफ कोड लिखने के लिए मजबूर करने के लिए इस विकल्प का उपयोग करते हैं। इसे बाहर लेना पर्याप्त होना चाहिए।