2011-01-17 21 views
17

मैं रेडबुक का पालन करके ओपनजीएल सीख रहा हूं। जब मैं पेज 9 0 के आसपास आता हूं, तो मुझे glGenBuffers() का उपयोग करने की आवश्यकता होती है; फिर मुझे "glew" इंस्टॉल करने की आवश्यकता है। चरणों का पालन करके www.cs.uiowa.edu/~cwyman/classes/common/howto/winGLUT.htmlग्लेव: अनसुलझा बाहरी प्रतीक __imp__glewInit

में मैं glew.sourceforge.net/ से glew.zip डाउनलोड करने और फ़ाइलों खोल दे।

मैं C:\Windows\System32

उसके बाद में C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib में C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include

  • glew32.lib में

    • glew.h रखा, और
    • glew32.dll, मैं वी.एस. 2010 में और Linker->input में अपने प्रोजेक्ट का निर्माण, मैं निर्भरता जोड़ें glew32.lib

      लेकिन जब मैं इसे बनाने, मैं त्रुटि

      unresolved external symbol __imp__glewInit

      मैं पूरा दिन बिताने के समाधान खोज करने के लिए, लेकिन एक भी नहीं मिला है।

      आशा है कि कोई मेरी मदद कर सकता है।

  • उत्तर

    7

    बस के रूप में हंस Passant पहले कहा (वह मेरे सवाल का जवाब पहले लेकिन उत्तर हटा दिया गया।)

    मैं Glew के स्रोत कोड संकलन की जरूरत है।

    इसे संकलित कैसे करें, OpenGL: How to compile glew32.dll from source file देखें।

    फिर आपको glew32d.dll और glew32d.lib मिलेगा।

    • रखो c:\windows\sysWOW64 में glew32d.dll (मैं भी system और system32 में रख)।
    • C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include

    में C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib

  • रखो glew.h में glew32d.lib रखो तो यह काम करेंगे।

  • +0

    मैं हंस पासेंट और मार्क की मदद से इसे समझने के लिए दो दिन बिताता हूं। – NoviceCai

    +1

    मुझे एक ही समस्या थी। मैंने इस मैनुअल के साथ स्क्रैच से फिर से शुरू किया और यह काम किया: http://www.3dgraphicsfoundations.com/visstudio.html – abimelex

    +0

    @abimelex, लिंक पोस्ट करने के लिए धन्यवाद, मैं वीएस में अतिरिक्त निर्भरताओं को परिभाषित करने के लिए कदम भूल गया था, ड्राइविंग कर रहा था मुझे पागल –

    1

    यह भी सुनिश्चित करें कि आप इसके लिए उचित शामिल करें। मैंने सभी पागल लाइब्रेरी सामान किए और वास्तव में हेडर फ़ाइल को शामिल करने के लिए भूल गए।

    मेरे मामले में यह था:

    #include <GL/glew.h> 
    
    5

    एक अन्य संभावित समाधान और स्रोत से dll संकलन से कम काम करते हैं, सिर्फ 32 बिट बाइनरी उपयोग करने के लिए है। विंडोज 7 64 बिट बस वर्तमान में उपलब्ध 64 बिट बाइनरी के साथ सह-संचालन नहीं करना चाहता है।

    किसी को भी आवश्यकता होने पर यहां एक सुंदर सामान्य सेटअप मार्गदर्शिका है।http://openglbook.com/setting-up-opengl-glew-and-freeglut-in-visual-c/

    35

    चूंकि यह पहले ही उल्लेख नहीं है, मेरी समस्या यह है कि मैं Glew (glew32s.lib) के स्थिर वर्शन से लिंक किया गया था, लेकिन मैं GLEW_STATIC पूर्वप्रक्रमक प्रतीक परिभाषित नहीं किया था (ताकि हैडर मैं प्रभावी रूप से के खिलाफ संकलन किया गया था नहीं था लाइब्रेरी से मेल नहीं खा रहा हूं जिसके खिलाफ मैं लिंक कर रहा था)।

    1

    मैंने कुछ घंटों के लिए भी इसके साथ संघर्ष किया। तब मुझे एहसास हुआ कि मेरा प्रोग्राम x64 के बजाय win32 है। मैं x64 फ़ोल्डर के तहत glew.lib को शामिल करता था जब मुझे win32 फ़ोल्डर के नीचे glew.lib का उपयोग करना चाहिए।

    संबंधित मुद्दे