2012-07-29 23 views
6

के लिए अनिर्धारित संदर्भ मैंने कई बार glew lib बनाया है। मेरे आखिरी निर्माण ने glCreateShader() जैसे सभी शेडर कार्यों के अपरिभाषित संदर्भों को हटा दिया। मुझे लगता है कि यह बिल्ड सही कारण है क्योंकि मुझे पता चला कि Code:Blocks विजुअल स्टूडियो 6.0 प्रोजेक्ट्स खोल सकता है, इसलिए इसमें मेरे लिए सब कुछ लगाया गया था।`_imp__glewInit @ 0 '

मैं glewInit() पर कॉल किए बिना अपने ऐप को संकलित कर सकता हूं लेकिन इसका परिणाम glCreateShader() कहलाता है जब यह एक सेगफाल्ट सही होता है। जो glew शुरू नहीं कर रहा है के कारण होता है।

मैं इसे चालू करने के की जरूरत है, लेकिन यह अभ्यस्त मुझे

लिंक XD करते हैं: mingw32, glew32, opengl32, glu32, glut32

आईडीई: कोड :: ब्लाकों

संकलक: MinGW32

उत्तर

18

अपने आप को बहुत सारी परेशानी बचाएं और सीधे अपनी परियोजना में glew.c जोड़ें। मुझे समझ में नहीं आता कि लोग बाहरी रूप से उससे जुड़ने के लिए इतनी मेहनत क्यों करते हैं। लाइसेंस अनुकूल है, और यह केवल एक स्रोत फ़ाइल है। बस #define GLEW_STATIC को याद रखें।

+0

हम्म मैं कोशिश करूँगा – Kaliber64

+0

धन्यवाद !!!! इच्छा है कि मुझे ऐसा करने की ज़रूरत नहीं है लेकिन जो कुछ भी काम करता है! – Kaliber64

+1

मैं वास्तव में उत्सुक हूं: क्यों नहीं? क्यों होगा आप इसे बाहरी पुस्तकालय के रूप में जोड़ने का प्रयास करते हैं? डीएलएल बनाना सिर्फ एक और रन-टाइम निर्भरता जोड़ता है, और एक स्थिर लाइब्रेरी बना देता है ... अच्छा, आप बस एक फ़ाइल जोड़ते हैं। हाहा! – TheBuzzSaw

0

लिंक का उपयोग करने वाले libs के बाद glew32 लिंक करें।

+0

अगर मैं इसे opengl32 के बाद लिंक करता हूं तो यह wgl कार्यों के लिए अनिर्धारित संदर्भों का एक समूह उत्पन्न करेगा। मुझे लगता है कि मैंने सभी क्रमपरिवर्तनों की कोशिश की है XD – Kaliber64

+1

@ डेविडमालॉय शायद आप स्थिर lib का उपयोग कर रहे हैं और 'GLEW_STATIC' घोषित नहीं कर रहे हैं? –

+0

मैं इसे कहां रखूं। Lib बनाते समय? या शीर्षलेख के शीर्ष पर? या कंपाइलर विकल्पों में। मैंने सही जगहों की कोशिश की है, लेकिन मैंने कोशिश की है। – Kaliber64