ত্রুটি LNK2038: '_ITERATOR_DEBUG_LEVEL' এর জন্য অমিল খুঁজে পাওয়া গেছে: মান '0' মেইন.ওবিজে '2' মানের সাথে মেলে না


131

আমি আমার সমস্যার অনেকগুলি সমাধান পড়েছি কিন্তু কেউই সহায়তা করেনি। আমি পরিষ্কার চেষ্টা করেছি, পুনর্নির্মাণ করব। পুনরায় প্রতিষ্ঠিত ভিজ্যুয়াল 2010 এবং পেশাদার থেকে চূড়ান্ত রূপান্তর। তবে এখনও আমি জানিনা কেন আমার এই ত্রুটি রয়েছে। আমার প্রকল্পটি এর মতো দেখায়: 1 আমার স্থির গ্রন্থাগারটি পরীক্ষা করার জন্য এক্স এক্স সমাধান। 1 ডিএল সলিউশন স্ট্যাটিক লাইব্রেরি। কোডটি যেটি ডেলিতে রূপান্তরিত হয় সেগুলি ক্লাসিফিকেশন ফ্রেমওয়ার্ক বলে 1 লিব থেকে ফাংশন ব্যবহার করে। আমি এই লিবটি শিরোনাম এবং সিপিপি হিসাবে মূলত উত্স কোড হিসাবে সরবরাহ করেছি। এক্সের সমাধানে আমি আমার উত্পন্ন গ্রন্থাগারটিকে এটির সাথে চালানোর জন্য + আরও কিছু লিবি যুক্ত করেছি + শ্রেণিবদ্ধি ফ্রেমওয়ার্ক.ডিল। আমি যখন রিলিজ ব্যবহার করি তখন সমস্ত কিছু ঠিকঠাক হয় তবে আমি যখন ডিবাগ-এ পরিবর্তন করি (কারণ আমি কিছু জিনিস ডিবাগ করতে চাই, আমি রিলিজ মোডে ডিবাগারটি এড়িয়ে চলা ক্লিষ্ট) আমি এটি পেয়েছি:

    2>Link:
    2>  ClassificationFramework.lib(SampleClass.obj) : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
    2>ClassificationFramework.lib(SampleClass.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in main.obj
    2>ClassificationFramework.lib(SampleNamesSet.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in main.obj
    2>ClassificationFramework.lib(SampleSet.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in main.obj
    2>ClassificationFramework.lib(DirectoryReader.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in main.obj
    2>LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
    2>C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Transformer\Debug\Tester.exe : fatal error LNK1319: 4 mismatches detected

যখন আমি রিলিজ তৈরি করি তখন আমি এই সতর্কতাগুলি পেয়েছিলাম:

    1>Link:
    1>  Generating code
    1>c:\program files (x86)\microsoft visual studio 10.0\vc\include\utility(101): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because ptimizations are disabled in function
    1>c:\users\kasia\documents\visual studio 2010\projects\classificationframework\classificationframework\directoryreader.cpp(30): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>c:\program files (x86)\microsoft visual studio 10.0\vc\include\xstring(1589): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>c:\users\kasia\documents\visual studio 2010\projects\classificationframework\classificationframework\samplenamesset.cpp(226): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>c:\users\kasia\documents\visual studio 2010\projects\classificationframework\classificationframework\directoryreader.cpp(60): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>c:\users\kasia\documents\visual studio 2010\projects\classificationframework\classificationframework\samplenamesset.cpp(199): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>c:\users\kasia\documents\visual studio 2010\projects\classificationframework\classificationframework\sampleset.cpp(27): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>c:\users\kasia\documents\visual studio 2010\projects\classificationframework\classificationframework\samplenamesset.cpp(59): warning C4748: /GS can not protect parameters and local variables from local buffer overrun because optimizations are disabled in function
    1>  Finished generating code
    1>ClassificationFramework.lib(SampleSet.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'ClassificationFramework.lib(SampleSet.obj)' or at 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Transformer\Release\vc100.pdb'; linking object as if no debug info
    1>ClassificationFramework.lib(SampleNamesSet.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'ClassificationFramework.lib(SampleNamesSet.obj)' or at 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Transformer\Release\vc100.pdb'; linking object as if no debug info
    1>ClassificationFramework.lib(SampleClass.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'ClassificationFramework.lib(SampleClass.obj)' or at 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Transformer\Release\vc100.pdb'; linking object as if no debug info
    1>ClassificationFramework.lib(DirectoryReader.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'ClassificationFramework.lib(DirectoryReader.obj)' or at 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Transformer\Release\vc100.pdb'; linking object as if no debug info
    1>  Tester.vcxproj -> C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Transformer\Release\Tester.exe

আমি দেখতে পেয়েছি যে পিডিবি ফাইলের ভুল পথের কারণে ডিবাগার এড়িয়ে চলে।

'Tester.exe': Loaded 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\Work\Release\Tester.exe', Symbols loaded.
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\kernel32.dll', Cannot find or open the PDB file
'Tester.exe': Unloaded 'C:\WINDOWS\SysWOW64\kernel32.dll'
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\ntdll.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\kernel32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\OpenCV2.2\bin\opencv_core220.dll', Binary was not built with debug information.
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\msvcp100.dll', Symbols loaded.
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\msvcr100.dll', Symbols loaded.
'Tester.exe': Loaded 'C:\OpenCV2.2\bin\opencv_highgui220.dll', Binary was not built with debug information.
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\user32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\gdi32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\advapi32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\rpcrt4.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\secur32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\ole32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\msvcrt.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_5.82.3790.4770_x-ww_A689AB02\comctl32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\avifil32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\winmm.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\msacm32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\msvfw32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\shell32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\shlwapi.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\avicap32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\version.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\OpenCV2.2\bin\opencv_imgproc220.dll', Binary was not built with debug information.
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\imm32.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\lpk.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\SysWOW64\usp10.dll', Cannot find or open the PDB file
'Tester.exe': Loaded 'C:\WINDOWS\WinSxS\wow64_Microsoft.Windows.Common-        Controls_6595b64144ccf1df_6.0.3790.4770_x-ww_8D2E3180\comctl32.dll', Cannot find or open the PDB file
The program '[4984] Tester.exe: Native' has exited with code 0 (0x0).

আমি যখন ডিবাগ-> উইন্ডোজ-> মডিউলগুলিতে যাই তখন আমি দেখতে পাই যে সে এই পিডিবি ফাইল বা কিছু খুঁজে পাবে না। আমি কীভাবে তাকে বলতে পারি যে এই ফাইলগুলি এখানে এবং এখানে রয়েছে? আমি অ্যাডমিনিস্ট্রেটর হিসাবে এমএসভিজুয়াল চালানোর চেষ্টা করেছি কিন্তু তাও সাহায্য করতে পারেনি। আমি পিডিবি ফাইল লোড করতে মাইক্রোসফ্ট সার্ভার ব্যবহার করেছি তবে সাহায্যও করিনি।

উত্তর:


148

ভিএস 2010 এ ডিটারগ ডিবাগ স্তরে ডিবাগ 2 এ ডিফল্ট হয় এবং প্রকাশে অক্ষম থাকে। আপনি যে ঘড়ি ব্যবহার করছেন তার মধ্যে একটিতে সম্ভবত আইট্রেটর ডিবাগিংটি ডিবাগে বন্ধ আছে কারণ এটি ভিজ্যুয়াল স্টুডিওর একটি পুরানো সংস্করণে নির্মিত হয়েছিল বা তারা স্পষ্টভাবে প্রকল্পটিতে সংজ্ঞা সংযুক্ত করেছে added

তাদের অনুসন্ধান করুন _ITERATOR_DEBUG_LEVELএবং _SECURE_SCLঅপসারণ করুন বা সমস্ত প্রকল্প এবং উত্সগুলিতে যথাযথভাবে সেট করুন এবং সবকিছু পুনর্নির্মাণ করুন।

_ITERATOR_DEBUG_LEVEL = 0 // disabled (for release builds)
_ITERATOR_DEBUG_LEVEL = 1 // enabled (if _SECURE_SCL is defined)
_ITERATOR_DEBUG_LEVEL = 2 // enabled (for debug builds)

সংক্ষেপে আপনি সম্ভবত রিলিজ এবং ডিবাগ ডলগুলি মিশ্রিত করছেন। ডিবাগ বা বিপরীতে রিলিজ dlls লিঙ্ক করবেন না!


6
আমি _ITERATOR_DEBUG_LEVEL বা _ এসকিউরএসসিএল এর যে কোনও .h বা .cpp ফাইলগুলিতে দেখতে পাচ্ছি না সেগুলি কেবল ইজেক্ট ফাইলগুলিতে উপস্থিত রয়েছে: / FAILIFMISMATCH: "_ ITERATOR_DEBUG_LEVEL = 0" কি সম্পর্কে
Qbunia

রিলিজের মধ্যে ডিবাগার দ্বারা ব্রেকপয়েন্টগুলি এড়ানো সম্পর্কে কী? কিছু ব্রেকপয়েন্টগুলি পূরণ করা হয় না এবং বলে যে
অনুকূলকরণ

42
"সংক্ষেপে আপনি সম্ভবত মুক্তি এবং ডিবাগ ডেলস মিশ্রণ করছেন" আমাকে সহায়তা করেছে। ধন্যবাদ!
সর্বাধিক

2
ওয়াইওয়াইয়েত! আপনি আমাকে বলতে চাইছেন যে আমি যখন এমএসভিসি ব্যবহার করছি, তখন একটি ডিবাগ বিল্ড পাওয়ার জন্য আমাকে অবশ্যই সমস্ত নির্ভরতা পুনরায় রচনা করতে হবে? এমনকি আমি যাদের ডিবাগ করতে যত্ন করি না? কি ছি ছি! আমি এটা বিশ্বাস করতে পারি না!
মাইকেল

1
"সংক্ষেপে আপনি সম্ভবত রিলিজ এবং ডিবাগ ডিএলগুলি মিশ্রিত করছেন" -> আমার ক্ষেত্রে রানটাইমালাইবারিটি মাল্টিথ্রেডডএলএল হওয়া উচিত ছিল যখন রিলিজ বিল্ডে মাল্টিথ্রেডডেবগডিএলএল ছিল।
ক্যাপ্টেন সাধারণ

108

আমি পুরানো ভিজ্যুয়াল 6 প্রকল্পটি ভিজ্যুয়াল স্টুডিও 2012-এ স্থানান্তরিত করার পরে, একটি স্থিতিশীল lib এর সাথে সংযোগ স্থাপনকারী একটি অ্যাপ্লিকেশনটিতে আমার আজ একই ত্রুটি হয়েছিল কারণ আমি এই বিষয়টিতে কিছুটা আপডেট করেছি।

আমার ক্ষেত্রে ত্রুটিটি ছিল যে আমি ভুলভাবে / MD এর পরিবর্তে / MDD সহ স্ট্যাটিক লাইবের প্রকাশ সংস্করণটি সংকলন করেছি , তবে অ্যাপ্লিকেশনটি / প্রকাশের ক্ষেত্রে MD রয়েছে। স্ট্যাটিক লিব প্রকল্পে সঠিক / এমডি সেট করা সমস্যার সমাধান করেছে।

এটি প্রকল্পের বৈশিষ্ট্যে করা হয়

  • নির্বাচন কনফিগারেশন প্রোপার্টি / সি সি ++ / কোড নির্মাণ গাছে
  • এবং রানটাইম লাইব্রেরি বিকল্পটি আপনার সমস্ত নির্ভরতা প্রকল্প এবং অ্যাপ্লিকেশনটিতে একই সেট করে।

21

আপনি যদি উদ্দেশ্যমূলকভাবে আপনার প্রকল্প এটিকে ডিবাগের অন্য একটি বি বিয়ের বিপরীতে প্রকাশ করতে চান, ডিবাগ করার সময় আপনার অ্যাপ্লিকেশনটির সামগ্রিক পারফরম্যান্স সুবিধাগুলি বজায় রাখতে বলুন, তবে আপনি সম্ভবত এই ত্রুটিটি ঘটাবেন। আপনি পুনরুদ্ধারকারী ডিবাগিং অক্ষম করতে (এবং এটি প্রকল্পের সাথে মিলে যায়) প্রজেক্ট বি এর প্রিপ্রসেসর পতাকাগুলি সাময়িকভাবে সংশোধন করে এটি ঠিক করতে পারেন:

প্রকল্প বি এর "ডিবাগ" বৈশিষ্ট্যগুলিতে কনফিগারেশন বৈশিষ্ট্য -> সি / সি ++ -> প্রিপ্রসেসর, প্রিপ্রসেসর সংজ্ঞাগুলিতে নিম্নলিখিতটি যুক্ত করুন:

_HAS_ITERATOR_DEBUGGING = 0; _ITERATOR_DEBUG_LEVEL = 0;

প্রোডাক্ট বি পুনরায় বিল্ড ইন ডিবেগ করুন, তারপরে রিলিজে প্রকল্প এ তৈরি করুন এবং এটি সঠিকভাবে লিঙ্ক করা উচিত।


11

প্রকল্পগুলির মধ্যে আমার একটি মিল নেই: একটি মাল্টি-বাইট চরিত্র সেট সহ, অন্যটি ইউনিকোডের সাথে। ইউনিকোডে সম্মত হওয়ার জন্য এগুলি সংশোধন করে সমস্যাটি সংশোধন করা হয়েছে।


2
দেখা যাচ্ছে যে আমি যে প্রকল্পটি তৈরির চেষ্টা করছিলাম তার মধ্যে এই সমস্যাটি ছিল এবং একই সাথে ডিবাগে অপ্রত্যাশিত অনুপস্থিত প্রিপ্রোসেসর ছিল: _DEBUG। দেখুন forums.codeguru.com/...
JGeerWM

মতলব-তে আমার একই রকম সমস্যা ছিল, তবে অন্যভাবে: চুক্তিটি পাওয়ার জন্য আমার ভিএস ২০১৩ বিল্ডটি মাল্টি-বাইটে পরিবর্তন করা দরকার। এটি রানটাইম লিব্র্যাব্রির জন্য একটি অমিলও সমাধান করেছে।
বার্নহিল্লেক

10

একই এক্সিকিউটেবল বা ডেল মধ্যে ডিবাগ বিল্ডস এবং রিলিজ বিল্ড একসাথে মিশ্রণের ফলে ত্রুটি ঘটতে পারে।

  1. বনাম কনফিগারেশন ম্যানেজারে, আপনার কিছু প্রকল্পগুলি ডিবাগ মোডে এবং কিছু রিলিজ মোডে রয়েছে?
  2. আপনার রিলিজ প্রকল্পগুলির মধ্যে একটিতে কি প্রিপ্রসেসর প্রতীক DEBUG বা _DEBUG সংজ্ঞায়িত হয়েছে?
  3. আপনার ডিবাগ প্রকল্পের একটিতে কি প্রিপ্রোসেসর প্রতীক এনডিইবিউজি সংজ্ঞায়িত হয়েছে?

7

আমি ভাল হিসাবে এই সমস্যা ছিল।

আমার সমস্যাটি ছিল যে আমি লাইব্রেরিতে অনুলিপি / আটকানো ছিল আমার ডিবাগ কনফিগারেশন থেকে ডিরেক্টরি অন্তর্ভুক্ত।

সুতরাং প্রকল্প "ইন্দেপ" "" ../ ডেবেগ "থেকে স্থির লাইব্রেরি" Dep.lib "সহ এমনকি প্রকাশে অন্তর্ভুক্ত ছিল। ফিক্সটি ছিল লাইব্রেরি ডিরেক্টরিটি "../Release" এ পরিবর্তন করা হয়েছিল তাই আমি পূর্বে নির্মিত ডিবাগ লাইব্রেরির চেয়ে রিলিজ-বিল্ট গ্রন্থাগারটি ধরলাম।


অনুরূপ সমস্যা ছিল, যেখানে আমার স্থির লিব একই জায়গায় অবতীর্ণ হয়েছে নির্বিশেষে মুক্তি হোক বা ডিবাগ হোক। সেক্ষেত্রে 'ডি' বা অন্যান্য যুক্ত করে তাদের আলাদা আলাদা নামকরণ করা উচিত should অন্যথায় আপনি যখনই ডিবাগ / রিলিজের মধ্যে স্যুইচ করেন ততক্ষণে আপনাকে পুনরায় বিল্ড তৈরি করতে বাধ্য করা হবে।
ইয়াউ

4

ডিবাগ এবং রিলিজ গ্রন্থাগারগুলির মধ্যে আমার একই সমস্যা ছিল। ভুল সমাধান বৈশিষ্ট্য / কনফিগারেশন বৈশিষ্ট্য / কনফিগারেশন মধ্যে ছিল।

প্রকল্পের কনফিগারেশনগুলি মূল কনফিগারেশন / প্ল্যাটফর্মের সাথে মেলে না।


3

সি ++ প্রকল্পের বৈশিষ্ট্যে (রিলিজ কনফিগারেশনের জন্য) কনফিগারেশন বৈশিষ্ট্য -> সি / সি ++ -> প্রিপ্রসেসর -> প্রিপ্রসেসর সংজ্ঞা


3

শেষ সুযোগ (অন্যান্য উপায় যদি কাজ না করে তবে): সমস্ত প্রকল্পে _ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH ম্যাক্রো সংজ্ঞায়িত করুন। এটি সিআরটি শিরোলেখগুলিতে ব্যবহৃত "# প্রগমা সনাক্তকরণ_মিসম্যাচ" বৈশিষ্ট্যটি অক্ষম করবে।


আমি এই পৃষ্ঠায় বেশ কিছু চেষ্টা করেছি এবং এটিই কেবল কাজ করেছিল। যোগ _ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCHঅধীনে C/C++ >> Preprocessor >> PreprocessorDefinitions
কনটাঙ্গো

2

opencv_core245.lib (dxt.obj): ত্রুটি LNK2038: '_ITERATOR_DEBUG_LEVEL' এর জন্য মিল পাওয়া যায়নি: মান '0' পরীক্ষায় '2' মানের সাথে মেলে না j
আমার কাছে লিঙ্কার-> ইনপুট-> অতিরিক্ত নির্ভরকারীতে ওপেনসিভি_কোর 245.lib এবং ওপেনসিভি_কোয়ার 245 ডি.লিব রয়েছে। যেহেতু এই দুটি বিভ্রান্তিকর ছিল আমি প্রথমে একটি ওপেনসিভি_কোর 245.lib সরিয়েছি। ত্রুটি চলে গেছে।


2

এটি ব্যবহার করে দেখুন: গোটো প্রকল্পের সম্পত্তি -> সি / সি ++ -> কোড উত্পন্ন -> রানটাইম লাইব্রেরি কম্বোবক্স মান থেকে নির্বাচন করুন: মাল্টি-থ্রেডেড ডিএলএল (/ এমডি) এটি আমার পক্ষে কাজ করে :)


2

আমার ক্ষেত্রে, ডিবাগ এবং রিলিজ উভয়ের জন্যই সমাধানটি পরিষ্কার করে পুরো সমাধানটি পুনর্নির্মাণ করা হয়েছিল।

সম্পাদনা করুন: আমার ক্ষেত্রেও সত্য (ভিএস2017) পদক্ষেপ 1: প্রকল্পটি পরিষ্কার করুন। পদক্ষেপ 2: কনফিগারেশন মোড পরিবর্তন করুন (ডিবাগ থেকে মুক্তি বা বিপরীতে)। স্টিপি 3: প্রকল্পটি পরিষ্কার করুন। পদক্ষেপ 4: প্রয়োজনীয় কনফিগারেশন মোডে বিল্ড করুন।

PS: কনফিগার মোড পরিবর্তন করতে, বিল্ড মেনুতে কনফিগারেশন সেটিংস সন্ধান করুন


1

আমার আজ একই সমস্যা ছিল (ভিএস 2010), আমি রিলিজ নির্মাণ করেছি Win32, তারপরে ডিবাগ নির্মাণের চেষ্টা | Win32, এবং এই বার্তাটি পেয়েছেন।

আমি ডিবাগ পরিষ্কার করার চেষ্টা করেছি | উইন 32 কিন্তু ত্রুটিটি এখনও অব্যাহত রয়েছে। আমি তারপরে রিলিজ সাফ করলাম | উইন 32, তারপরে ডিবাগ | Win32, এবং তারপরে এটি জরিমানা।


1

প্রোজেক্ট প্রোপার্টি -> লিংকার -> ইনপুট -> অতিরিক্ত নির্ভরতা (ভিসি 10) - এর ডিবাগ সংস্করণগুলিতে নির্ভরতা গ্রন্থাগারগুলি পরিবর্তন করে আমি এই ত্রুটিটি (ওগ্রে 3 ডি + বুলেট ব্যবহার করে আমার ক্ষেত্রে) থেকে মুক্তি পেতে পরিচালিত হয়েছি।

আমি বুলেটকলেশন.লিবকে বুলেটকলিজেন_দেবগ.লিব (ডিবাগ কনফিগারেশনের জন্য) এ পরিবর্তন করেছি এবং এটি সংকলিত হয়েছে।


1

আমি "অতিরিক্ত গ্রন্থাগার ডিরেক্টরি" সংশোধন করার ক্ষেত্রে আমার সমস্যার সমাধান করেছি, "S (সমাধানডায়ার) \ প্রকাশ" ইঙ্গিত করার ক্ষেত্রে এটি ভুল ছিল, আমি এটিকে "$ (সমাধানডায়ার) \ $ (ইন্টারডির)" এ পরিবর্তন করেছি

এটি সংশোধন করতে আপনার প্রকল্পের বৈশিষ্ট্যগুলি খুলুন -> কনফিগারেশন বৈশিষ্ট্য -> লিংক -> সাধারণ -> অতিরিক্ত গ্রন্থাগার ডিরেক্টরি

আমি আশা করি এটি কিছু পোপকে একই সমস্যায় সাহায্য করবে;)


সুতরাং আমার জন্য ডিবাগ ঠিকঠাক কাজ করে তবে মুক্তির সময় তৈরি করার সময় আমি উপরের ত্রুটিটি পাই .... আমি খুঁজে পেয়েছি অতিরিক্ত লাইব্রেরি ডিরেক্টরিটি পেয়েছি: সি: / প্রোগ্রাম ফাইলগুলি / পিসিএল 1.8.1 / লিব / $ (কনফিগারেশন) এখন আমার কী যুক্ত করা উচিত? এখানে?
sqp_125

0

আমারও এই সমস্যা ছিল এবং এটি উত্থাপিত হয়েছিল কারণ আমি প্রকল্পটি পুনরায় তৈরি করেছি এবং তারপরে নির্ভরশীল প্রকল্পে রেফারেন্স দিয়ে এটিকে পুনরায় লিঙ্ক করতে ভুলে গিয়েছি।

সুতরাং এটি নতুনটির পরিবর্তে পুরানো প্রকল্পের রেফারেন্সের সাথে যুক্ত ছিল।

এটি জেনে রাখা গুরুত্বপূর্ণ যে রেফারেন্সের মাধ্যমে পূর্বের লিঙ্কযুক্ত প্রকল্পটি পুনরায় যুক্ত করার ক্ষেত্রে একটি ত্রুটি রয়েছে। আপনি vcxproj এ ম্যানুয়ালি রেফারেন্সটি মুছতে পেরেছেন এবং কেবলমাত্র তখনই আপনি এটিকে আবার যুক্ত করতে পারবেন। এটি এমএসডিএন অনুসারে ভিজ্যুয়াল স্টুডিওতে একটি পরিচিত সমস্যা।


0

আমার একই সমস্যা ছিল, তবে ভুল সেটিংসটি ছিল বাহ্যিক .lib ফাইল যা থেকে আমার কাছে উত্স নেই। যদি আপনার কাছে সোর্স ফাইল না থাকে তবে সবচেয়ে সহজ উপায় হ'ল কেবলমাত্র .lib ফাইলের বিষয়বস্তু পরিবর্তন করা।

একটি সম্পাদকে .lib ফাইল খুলুন (আমি PSPad ব্যবহৃত, কুঁড়ি উইন্ডোজ নোটপ্যাড সম্ভব) এবং সব occurences প্রতিস্থাপন _ITERATOR_DEBUG_LEVEL = 2 থেকে _ITERATOR_DEBUG_LEVEL = 0


0

আমার ক্ষেত্রে "প্রিপ্রসেসর সংজ্ঞা" এ NDEBUG ম্যাক্রো সংজ্ঞাটি _DEBUG এ পরিবর্তন করা দরকার। আমি .exe ব্যবহারের জন্য একটি স্ট্যাটিক লাইব্রেরি তৈরি করছি যা প্রশ্নটিতে তালিকাবদ্ধ খুব একই ত্রুটি সম্পর্কে অভিযোগ করেছিল। কনফিগারেশন বৈশিষ্ট্যগুলিতে ("প্রকল্প" মেনু, "বৈশিষ্ট্যগুলি" মেনু আইটেম) এ যান এবং তারপরে সি / সি ++, বিভাগ, তারপরে প্রিপ্রসেসর বিভাগটি ক্লিক করুন এবং তারপরে আপনার প্রিপ্রসেসর সংজ্ঞাগুলি সম্পাদনা করুন যাতে এনডিইডিইউজি _DEBUG এ পরিবর্তিত হয় (সাথে মেলে উদাহরণস্বরূপ স্থাপন করা)।


0

অন্যান্য সমস্ত উত্তরগুলির মতো, আমি আমার Configuration Properties -> C/C++ -> Preprocessorনির্দেশাবলী পরীক্ষা করেছি ।
আমার ক্ষেত্রে আমি ছিল NDEBUGসঠিকভাবে রিলিজ সংজ্ঞায়িত, কিন্তু আমি ছিল: _SECURE_SCL=1

এটিকে অপসারণ করা সমস্যার সমাধান করেছে।


-1

উপরের সাহায্যে ছোট সংযোজন: ভিএসটি 2017 ব্যবহার করে একটি পুরানো ভিএসটি সমাধান স্থিতিশীলভাবে যুক্ত করার পরে আমি অমিল ত্রুটি পেয়েছি। ভিএসটি এখন এই 2 টি লাইন থাকা প্রাকম্পম্পাইল হেডারের জন্য "stdfax.h" উত্পন্ন করে:

// Turn off iterator debugging as it makes the compiler very slow on large methods in debug builds
#define _HAS_ITERATOR_DEBUGGING 0
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.