এক্সকোডের একাধিক বিভিন্ন সংস্করণ ব্যবহার করার সময় সংকলন ত্রুটিগুলি বাছাই করা


3

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

  • / অ্যাপ্লিকেশনস / এক্সকোড.এপ: এক্সকোডের বর্তমান সংস্করণ, 6.1.1
  • / অ্যাপ্লিকেশনগুলি / এক্সকোড 4.6.3/Xcode.app: এক্সকোডের পূর্ববর্তী সংস্করণ, 4.6.3

আমি এই দুটি ব্যবহার করে মধ্যে স্যুইচিং পরিকল্পনা ছিল sudo xcode-select -s PATH। আমি যতদূর বলতে পারি, এই কমান্ডটি কাজ করে এবং আমি ব্যবহার করে ফলাফলটি পরীক্ষা করতে পারি sudo xcode-select -p। আরও, আমার কাছে সিএলটি ইনস্টল আছে /usr/bin, যাতে উদাহরণস্বরূপ, which g++শো /usr/bin/g++। তবুও, যদি আমি পুরানো এক্সকোড সংস্করণে চলে যাই, প্যাকেজটি সংকলন করবে না। আকর্ষণীয়ভাবে, g++ -vএক্সকোডের দুটি ভিন্ন সংস্করণের জন্য আউটপুটটির নীচে সন্ধান করুন :

এক্সকোড 6.1.1 এর জন্য:

g++ -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin14.1.0
Thread model: posix

এক্সকোড 4.6.3 এর জন্য:

g++ -v
couldn't understand kern.osversion `14.1.0'
Using built-in specs.
Target: i686-apple-darwin11
Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/src/configure --disable-checking --enable-werror --prefix=/Applications/Xcode.app/Contents/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin11 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11 --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1
Thread model: posix
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)

সুতরাং আমার প্রশ্নগুলি হ'ল:

বার্তাটি কী বোঝায় couldn't understand kern.osversion 14.1.0? এই যে আমার সম্পর্কে উদ্বিগ্ন হওয়া উচিত?

কেন এটি প্রদর্শিত হচ্ছে না

--prefix=/Applications/Xcode.app/Contents/Developer/usr/llvm-gcc-4.2

g++ -vপুরানো সংস্করণ নির্বাচন করার পরে আউটপুটটিতে নতুন এক্সকোড প্যাকেজটির দিকে ইঙ্গিত করে, যদিও আমি ব্যবহার করে এক্সকোডের পথটি পরিবর্তন করেছি sudo xcode-select -s PATH?

এক্সকোডের একাধিক সংস্করণ, প্রতিটি নিজস্ব সিএলটি সেট করে একই সময়ে ইনস্টল করার আপনার পছন্দনীয় উপায় কী?

কেউ জিনিস পরিষ্কার করতে পারলে দুর্দান্ত হত।


আপনার যদি সত্যিই জিসিসির প্রয়োজন হয় আমি প্যাকেজ ম্যানেজারের মাধ্যমে একটি আপ্টোডেট সংস্করণ ইনস্টল করব যেমন ম্যাকপোর্টস, হোমব্রু বা ঝনঝন ব্যবহার করুন - এক্সকোড জিসিসি যদি এটি বিদ্যমান থাকে তবে এটি সর্বশেষে এক্সকোডে নেই
মার্ক

কি ত্রুটি আছে - সম্ভবত clamng বাস্তব ত্রুটি খুঁজে পেতে উন্নতি হয়েছে
মার্ক

উত্তর:


1

আপনি জিনিস পরিচালনা করার সেরা পথে চলেছেন।

xcode-selectসংকলক এবং শিরোনামগুলি বেছে নিতে আপনার বিল্ড স্ক্রিপ্ট কলটি করুন যা আপনি প্রতিটি প্রকল্পের বিরুদ্ধে সংকলন করতে পছন্দ করেন। এক্সকোডের তিনটি সংস্করণ এভাবে চলতে থাকাতে আমার কোনও সমস্যা হয়নি। (6, 7 এবং 7.1)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.