আমি ভিজ্যুয়াল স্টুডিওতে একটি সি ++ প্রকল্প সংকলন করার সময় কেন মারাত্মক ত্রুটি "LNK1104: ফাইলটি 'সি: \ প্রোগ্রাম.obj' খুলতে পারে না?


117

আমি ভিজ্যুয়াল স্টুডিও ২০০৮ সালে একটি নতুন সি ++ প্রকল্প তৈরি করেছি No এখনও কোনও কোড লেখা হয়নি; কেবলমাত্র প্রকল্পের সেটিংস পরিবর্তন করা হয়েছে।

আমি যখন প্রকল্পটি সংকলন করি তখন আমি নিম্নলিখিত মারাত্মক ত্রুটিটি পাই:

মারাত্মক ত্রুটি LNK1104: ফাইলটি 'সি: \ Program.obj' খুলতে পারে না

উত্তর:


153

এই নির্দিষ্ট সমস্যাটি এমন একটি lib ফাইলের নির্ভরতা নির্দিষ্ট করে যা এর পথে ফাঁকা রয়েছে। প্রকল্পটি সঠিকভাবে সংকলনের জন্য পথটির চারপাশে কোট দিয়ে ঘিরে রাখা দরকার।

উপর কনফিগারেশন প্রোপার্টি -> Linker -> ইনপুট প্রকল্পের বৈশিষ্ট্য ট্যাবে, একটি হল অতিরিক্ত অধীনস্থ সম্পত্তি। এই সম্পত্তিটি থেকে এই সম্পত্তিটি পরিবর্তন করে স্থির করা হয়েছিল:

সি: \ প্রোগ্রাম ফাইলগুলি \ সফটওয়্যার এসডিকে \ lib \ গ্রন্থাগার.লিব

প্রতি:

"সি: \ প্রোগ্রাম ফাইলগুলি \ সফটওয়্যার এসডিকে \ lib \ গ্রন্থাগার.লিব"

যেখানে আমি উদ্ধৃতি যোগ করেছি।


17
Godশ্বর আপনি কেবলমাত্র দু'দিনের বাগ তাড়া করে 30 সেকেন্ডে ঝুলিয়ে
রেখেছেন

10
আমারও একই সমস্যা ছিল। যদি আপনার লিঙ্কারটি সঠিক হয় তবে আপনার লিবিব ডিরেক্টরিটি ভুলভাবে সেট করা থাকলে একই ত্রুটিটি আসতে পারে। আপনি লাইব্রেরিটি সঠিকভাবে সেট করেছেন কিনা তা দেখতে কনফিগারেশন বৈশিষ্ট্যগুলি -> ভিসি ++ ডিরেক্টরি -> গ্রন্থাগার ডিরেক্টরি অনুসন্ধান করার চেষ্টা করুন । কখনও কখনও lib ফোল্ডারে একটি x86 এবং x x ফোল্ডার থাকে। উভয় সমন্বিত ফোল্ডারের পরিবর্তে আপনাকে এগুলির একটিতে (আপনার সংকলকের উপর নির্ভর করে) সেট করতে হবে।
M4st3rM1nd

1
পরে সেমিকোলন রাখতে ভুলবেন না "C:\Program Files\sofware sdk\lib\library.lib"। উইলের অনুপস্থিতি ;প্রকল্পটিও ভুলভাবে সংকলন করতে পারে।
রসসিওলি

1
ভিজ্যুয়াল স্টুডিও 2005 (উইন্ডোজ 8.1 এ) ব্যবহার করে ওপেনসিভি তৈরি করার চেষ্টা করার সময় এই সমস্যাটি ছিল ... এবং এটি এটিকে সমাধান করেছে। গ্রেট!
আলাইনড

1
আমি এটি চেষ্টা করেছিলাম এবং এটি আমার কাজ করে না। "Qt5Xmld.lib"; "Qt5XMLPatternsd.lib"; "Qt5Cored.lib";% (অতিরিক্ত নির্ভরশীলতা) -আমি কি করবো?
এসটিএফ

65

ফাইলটি এখনও চলমান থাকলে এটি ঘটতে পারে।

: -1: ত্রুটি: LNK1104: ফাইল 'ডিবাগ \ ****। উদাহরণ' খুলতে পারে না exe


4
এটা আমার সমস্যা ছিল!
কামরান বিগডেলি

1
এমএস সুরক্ষা প্রয়োজনীয়তা ফাইলটি লক করে রেখেছি বলেই আমি এটি পেয়েছি।
সিনিটেক

হ্যাঁ, পূর্ববর্তী কনসোল উইন্ডোটি বন্ধ করে দিয়ে হঠাৎ লিবিবটি পড়া যায়।
কারি

15

আমার কাছে সমস্যাটি ভিজুয়াল স্টুডিওটি বন্ধ করে পুনরায় খোলার পরে চলে গেল। সমস্যাটি কেন ঘটেছিল তা নিশ্চিত নয় তবে এটি শটের জন্য মূল্যবান হতে পারে।

এটি ভিএস 2013 আলটিমেট, উইন্ডোজ 8.1 এ ছিল।


4
আহ, মাইক্রোসফ্ট ... আমাদের প্রথম চেষ্টা সর্বদা কাছাকাছি থাকা উচিত এবং আবার খোলা উচিত (বা বিদ্যুত বন্ধ এবং চালু) - যখন আমরা তা করি তখন বেশ কয়েকটি রহস্যজনক বাগ চলে যায় ...
লিওনার্দো আলভেস মাচাদো

1
আমি এত লজ্জা বোধ করছি যে এই সমাধানটি আমার সমস্যার সমাধান করতে পারে। এখন, আমি আর আমার বন্ধুবান্ধব এবং পরিবারের সাথে দেখা করতে বাইরে যেতে পারছি না।
javaLover

2
আপনার ক্যারল একই সমস্যা ছিল।
amod

10

এছাড়াও চেক করুন আপনি এই চালু না থাকে যে: কনফিগারেশন প্রোপার্টি - একটি ফাইলে> Preprocess -> সি / সি ++ -> Preprocessor


আমার ক্ষেত্রে এটিও ছিল সমস্যা, তবুও, আমি এই পতাকাটি চালু করতে চাইলে (প্রিপোসেসড ফাইলটি দেখার জন্য) আমি কী করব?
গাই অভ্রাহাম

2
আপনার এখানে কিছু কর্মক্ষেত্র রয়েছে: প্রিপ্রসেসড কোডটি কীভাবে আউটপুট করবেন এবং এটি (ভিজ্যুয়াল স্টুডিও) এবং এখানে সংকলন করুন: / পি আর্গুমেন্ট (কোনও ফাইলে প্রিপ্রোসেস) দিয়ে একটি প্রকল্প (ভিএস ২০০)) সংকলন সংকলন করে না । তবে মূলত এটি একটি সংকলক বিকল্প তাই এটি উভয়ই নয় তবে তা করবে।
আসফ লেভি

4

আমার একই সমস্যা ছিল।এটি অতিরিক্ত লাইব্রেরির পাথের ফোল্ডারের নামে একটি "," এর ফলে ঘটেছিল I এটি অতিরিক্ত লাইব্রেরির পাথ পরিবর্তন করে সমাধান করা হয়েছে।


4

আমার সমস্যাটি ছিল একটি অনুপস্থিত .libএক্সটেনশন, আমি কেবল এর সাথে সংযোগ mylibদিচ্ছিলাম এবং ভিএস অনুসন্ধানের সিদ্ধান্ত নিয়েছে mylib.obj


3

আমার ক্ষেত্রে এটি একটি ভুল নির্দেশিত রেফারেন্সের বিষয় ছিল। প্রকল্প অন্য প্রকল্পের আউটপুট রেফারেন্স করেছে তবে পূর্ববর্তীটি যেখানে অনুসন্ধান করেছিল সেখানে ফাইল আউটপুট দেয়নি।


3

সমাধান 1 (আমার ক্ষেত্রে): উইন্ডোজ এক্সপ্লোরার প্রক্রিয়া পুনরায় চালু করুন (হ্যাঁ, উইন্ডোজ ফাইল ম্যানেজার)।

সমাধান 2:

  1. ভিজ্যুয়াল স্টুডিও বন্ধ করুন উইন্ডোজ লগঅফ
  2. লগন, ভিজ্যুয়াল স্টুডিওটি আবার খুলুন
  3. যথারীতি গড়ে তুলুন। এটি এখন তৈরি করে এবং সমস্যাযুক্ত ফাইল অ্যাক্সেস করতে পারে।

আমি কখনও কখনও অনুমান করি যে ফাইল সিস্টেম বা এটি যে কেউ এটি নিয়ন্ত্রণ করছে তার অনুমতিগুলি দিয়ে এটি হারিয়ে যায়। উইন্ডো সেশনটি পুনরায় চালু করার আগে, জম্বি msbuild32.exeপ্রক্রিয়াগুলি মেরে ফেলার চেষ্টা করেছিল , ভিজ্যুয়াল স্টুডিও পুনরায় চালু করুন, সমস্যা ফাইলটি দেখায় না এমন কোনওটি পরীক্ষা করুন। কোনও বিল্ড কনফিগারেশন সমস্যা নেই। এটা এখন এবং তারপর ঘটবে। উইন্ডোজের কিছু অভ্যন্তরীণ জিনিস ঠিক করে না, পুনরায় চালু করতে হবে।


আমার ভিএস2019 এর সাথে এই সমস্যাটি ছিল ... এটি এটিকে ঠিক করে দিয়েছে ... এই যে বাগগুলি অবিরত রয়েছে amazing thx
JHBonarius

2

আমার একই ত্রুটি ছিল, কেবলমাত্র আমি ইনস্টল করেছি এমন একটি নুগেট প্যাকেজ (যা কেবলমাত্র শিরোনাম নয়) এবং পরে আনইনস্টল করার চেষ্টা করেছি।
আমার পক্ষে ভুলটি হ'ল আমি তখনও প্যাকেজটির জন্য শিরোনামটি সহ অন্তর্ভুক্ত ছিলাম আমি আমার .cpp ফাইলগুলির মধ্যে একটি আনইনস্টল করেছি (বেশ নির্বোধ, হ্যাঁ)।
এমনকি এটির সাথে যুক্ত অতিরিক্ত গ্রন্থাগার ডিরেক্টরিগুলি আমি সরিয়ে দিয়েছি Project -> Properties -> Linker -> General, তবে অবশ্যই কার্যকর হয়নি কারণ আমি এখনও অস্তিত্বহীন শিরোনামটি উল্লেখ করার চেষ্টা করছিলাম was

এই ক্ষেত্রে অবশ্যই একটি বিভ্রান্তিকর ত্রুটি বার্তা, যেহেতু শিরোনামের নাম ছিল <boost/filesystem.hpp>তবে ত্রুটিটি আমাকে দিয়েছে "cannot open file 'llibboost_filesystem-vc140-mt-gd-1_59.lib'"এবং কোনও লাইন নম্বর বা কিছুই নেই।


2

আমার একই সমস্যা ছিল, তবে আমার মামলার সমাধান উত্তরগুলিতে তালিকাভুক্ত নয়। আমার অ্যান্টিভাইরাস প্রোগ্রাম (এভিজি) ফাইলটিকে MyProg.exeভাইরাস হিসাবে নির্ধারণ করেছে এবং এটিকে 'ভাইরাস স্টোরহাউসে' রেখে দিয়েছে। আপনাকে এই স্টোরহাউসটি পরীক্ষা করতে হবে এবং যদি ফাইল সেখানে থাকে - তবে কেবল এটি পুনরুদ্ধার করুন। এটা আমাকে সাহায্য করেছে।


1

একটি সমাবেশ প্রকল্পের জন্য (-> অধীনস্থ বিল্ড -> কাস্টমাইজেশন বিল্ড - ProjectName> masm (নির্বাচিত)), সেটিং Preprocessed উত্স তালিকা জেনারেট করুন থেকে সত্য আমার জন্য সমস্যা সৃষ্ট খুব, ক্লিয়ারিং সেটিং এটি সংশোধন করা হয়েছে। VS2013 এখানে।


1

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


1

আমি এই তালিকা অনুসারে আমার সমস্ত সেটিংস চেক করেছি: http://msdn.microsoft.com/en-us/library/ts7eyw4s.aspx#feedback । এটি আমার পক্ষে সহায়ক এবং আমার পরিস্থিতির জন্য আমি জানতে পেরেছি যে প্রকল্পগুলির সম্পত্তিগুলির লিংক নির্ভরতাতে ডাবল-কোট রয়েছে, যা সেখানে হওয়া উচিত নয়।


0

আমি উত্তর দিচ্ছি কারণ আমি অন্য কারও দ্বারা তালিকাবদ্ধ এই বিশেষ সমাধানটি দেখতে পাচ্ছি না।

স্পষ্টতই আমার অ্যান্টিভাইরাস (অ্যাড-অ্যাওয়ার) আমার একটি প্রকল্পের উপর নির্ভর করে একটি ডিএলএল ফ্ল্যাগ করছে, এবং এটি মুছে ফেলছে। ডিএলএল যেখানে থাকে সেই ডিরেক্টরি বাদ দেওয়ার পরেও আমি আমার কম্পিউটারটি পুনরায় চালু না করা পর্যন্ত একই আচরণ অব্যাহত রাখে।


0

আমার ক্ষেত্রে, আমি আগের গেম ইঞ্জিন গ্রাফিক্স কোর্স থেকে গণিত গ্রন্থাগার ফাইলগুলি জিএলএম দিয়ে প্রতিস্থাপন করেছি। সমস্যাটি হ'ল আমি তাদের ভিজ্যুয়াল স্টুডিওর সলিউশন এক্সপ্লোরারের মধ্যে প্রকল্পে যুক্ত করিনি (যদিও তারা প্রকল্পের ভাণ্ডারে ছিল)।


0

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

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

আশা করি এই উত্তরটি, অভাবী কাউকে সহায়তা করবে।


0

আমি এটা মীমাংসিত যোগ একটি বিদ্যমান প্রকল্প থেকে আমার সমাধান , যা আমি যোগ করতে ভুলে গেছি প্রথমবার।


0

আমার একই ত্রুটি ছিল:

fatal error LNK1104: cannot open file 'GTest.lib;'

এটি ;শেষে হয়েছিল। আপনার যদি একাধিক গ্রন্থাগার থাকে তবে সেগুলি ফাঁকা স্থান (স্পেসবার) দ্বারা আলাদা করা উচিত, কোনও কমা বা আধা-কলোন নয়!

সুতরাং ;লাইব্রেরি তালিকাভুক্ত করার সময় বা অন্য কিছু ব্যবহার করবেন নাProject properties >> Configuration Properties >> Linker >> Input


0

আমি উপরোক্ত সমাধানের চেষ্টা করেছি কিন্তু আমার পক্ষে কাজ করে নি। সুতরাং আমি এক্সের নামকরণ করে সমাধানটি পুনর্নির্মাণ করি। এটা আমার জন্য কাজ করে.


0

ভিজ্যুয়াল স্টুডিও 2019 সালে ভিসি ++ ডিএলএল তৈরি করার সময় আমার এই সঠিক ত্রুটি হয়েছিল:

LNK1104: 'সি: \ Program.obj' ফাইলটি খুলতে পারে না

প্রোজেক্টস> লিংকার> ইনপুট> মডিউল সংজ্ঞা ফাইলের অধীনে পরিণত হয়েছে, আমি একটি ডিএফ ফাইল সুনির্দিষ্ট করেছিলাম যা ফাইলের নামের শেষে মিল নেই ডাবল-কোট । তুলনাহীন দ্বৈত উদ্ধৃতি মুছে ফেলা সমস্যাটি সমাধান করেছে।


0

খুন করে msbuild32.exeআবার তৈরি করা হয়েছে। এটা আমার জন্য কাজ করেছে।


-1

আমি "ভিজ্যুয়াল স্টুডিও 2013" দিয়ে একই সমস্যায় পড়েছি।

LNK1104: cannot open file 'debug\****.exe

এটি ভিজ্যুয়াল স্টুডিও বন্ধ এবং পুনরায় শুরু করার পরে সমাধান হয়েছে।


-3

আমার একই সমস্যা ছিল, আমি সবেমাত্র নতুন প্রকল্পে কোডটি অনুলিপি করে তৈরি শুরু করেছি। আরও কিছু ত্রুটি আসতে শুরু করে। ত্রুটি C4996: 'ফোপেন': এই ফাংশন বা পরিবর্তনশীলটি অনিরাপদ হতে পারে। পরিবর্তে fopen_s ব্যবহার বিবেচনা করুন

এই সমস্যাটি আবার সমাধান করতে আমি নীচে প্রকল্প প্রকল্পে আমার একটি সম্পত্তি যুক্ত করেছি। প্রকল্প -> বৈশিষ্ট্য -> কনফিগারেশন সম্পত্তি -> সি / সি ++। এই বিভাগে মাঠের নাম প্রিপ্রসেসর সংজ্ঞা রয়েছে আমি সমস্যার সমাধানের জন্য এটি _CRT_SECURE_NO_WARNINGS যুক্ত করেছি আশা করি এটি সাহায্য করবে ...

ধন্যবাদ


এই উত্তরটির তাত্ত্বিক পোস্টের সাথে কোনও সম্পর্ক নেই।
জার

সুরক্ষা বৈশিষ্ট্যগুলি অক্ষম করার কথা উল্লেখ না করা ঠিক একটি ভাল ধারণা নয়
মাত্তি ভির্ককুনেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.