2010-03-26 14 views
11
#include <intrin.h> 

ऊपर रिपोर्ट करेंगे:"intrin.h: ऐसी कोई फ़ाइल या निर्देशिका" से कैसे निपटें?

intrin.h: No such file or directory 

जो एक MSVC हेडर फाइल प्रतीत हो रहा है, लेकिन मैं ग्रहण CDT उपयोग कर रहा हूँ, मैं इसे उपलब्ध कैसे कर सकते हैं वहाँ कुछ पुस्तकालयों की जरूरत है??

CDT संकलन के लिए MinGW का उपयोग करता है, लेकिन कोई intrin.h है:

D:\Tools\MinGW\lib\gcc\mingw32\3.4.5\include>dir *intrin.h 

2006-01-17 21:47   34,528 emmintrin.h 
2006-01-17 21:47   22,281 mmintrin.h 
2006-01-17 21:47    3,586 pmmintrin.h 
2006-01-17 21:47   30,925 xmmintrin.h 

वहाँ किसी को भी मदद कर सकता है?

+0

आप जीसीसी 3.4.5 का उपयोग कर रहे हैं। अपडेट करना बुद्धिमान होगा, क्योंकि यह उपयोगी होने के लिए बहुत पुराना है ... – rubenvb

उत्तर

7

यह एक ऐसा हेडर है जो "इंट्रिनिक्स" का एक गुच्छा घोषित करता है - संकलक जो कि कंपाइलर में बनाए जाते हैं ताकि यह उनके लिए इनलाइन कोड उत्सर्जित कर सके। यदि आप संकलक के रूप में वीसी ++ का उपयोग कर रहे हैं, तो यह उसी अन्य निर्देशिका में होना चाहिए जो इसके अन्य मानक शीर्षलेखों के साथ हो। यदि आप एक अलग कंपाइलर का उपयोग कर रहे हैं, तो आप जिस कंपाइलर का उपयोग कर रहे हैं उसके अनुरूप आपको इंट्रिनिक्स को बदलना होगा। जीसीसी, उदाहरण के लिए, बहुत सारे आंतरिक कार्यों में है, लेकिन थोड़ा अलग नामों के साथ।

संपादित करें: यह देखते हुए कि आप MinGW (I.e., gcc) का उपयोग कर रहे हैं, आप कोड को पोर्ट करने (या वीसी ++ का उपयोग करके) बहुत अधिक अटक गए हैं। यदि आप काफी कम मात्रा में कोड से निपट रहे हैं, तो ऐसा करने का एक तरीका यह है कि उस हेडर को शामिल करने वाली लाइन पर टिप्पणी करें, और इसे संकलित करने का प्रयास करें। कंपाइलर त्रुटियों को इंगित करेगा जहां आंतरिक कार्यों का उपयोग किया गया था जो जीसीसी के पास नहीं है। फिर आप उन्हें देख सकते हैं (उदा।, एमएसडीएन पर) और जीसीसी द्वारा प्रदान की जाने वाली कुछ चीज़ों को खोजने का प्रयास करें जो एक ही चीज़ (पर्याप्त पास) करता है। इसका उपयोग करने के आधार पर (और कितना) यह तेज़ और आसान हो सकता है, या एक ही चीज करने के लिए नए कोड का उत्पादन शुरू करना आसान हो सकता है।

* आपके द्वारा प्राप्त किए गए आंतरिक शीर्षलेख (संभवतः) में माइक्रोसॉफ्ट के जीसीसी के समकक्षों की घोषणा (कम से कम कुछ) की घोषणा होगी जिन्हें आपको प्रतिस्थापित करने की आवश्यकता है। आप शायद कोड को पोर्ट करने की प्रक्रिया में उनका उपयोग कर समाप्त कर देंगे, इसलिए उनके बारे में मत भूलना। साथ ही, माइक्रोसॉफ्ट के बजाए उन हेडरों को बस निश्चित रूप से कोड काम करने के लिए नहीं जा रहा है।

+0

लेकिन मैं ग्रहण-सीडीटी का उपयोग कर रहा हूं :( – Mask

+0

ग्रहण एक संपादक/आईडीई है। यहां क्या मायने रखता है कि आप किस कंपाइलर का उपयोग कर रहे हैं * ग्रहण –

+0

यह मिनजीडब्लू टूलचेन का उपयोग करता है। – Mask

6

मुझे एक ही समस्या है। ग्रहण + cdt + mingw32-gcc7.2 + glm (openGL गणित पुस्तकालय) का उपयोग करके #include <intrin.h> को #include <x86intrin.h> के साथ gcc -msse2 में ध्वज जोड़ें और सभी काम किया।

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