আমি কীভাবে উবুন্টুতে সর্বশেষ জিসিসি ব্যবহার করব?


132

আমি আমার প্রোগ্রামটি সর্বশেষ সংস্করণের সাথে সংকলন করতে চাই gcc

উবুন্টু 14.04, জিসিসি 4.8.2 দিয়ে আসে সেখানে 4.9.0 পাওয়া যাচ্ছে তা অবশ্য পরন্তু, আমি দেখতে যে এটি একটি প্যাকেজ হিসাবে উপলব্ধ: gcc-4.9। আমি এটি ইনস্টল করার চেষ্টা করেছি

sudo apt-get install gcc-4.9

কিন্তু এটা বলে

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'gcc-4.9-base' for regex 'gcc-4.9'
gcc-4.9-base is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

দেখে মনে হচ্ছে এটি ইতিমধ্যে ইনস্টল করা আছে, কেবলমাত্র ডিফল্ট হিসাবে নয়? আমি কীভাবে এটি আমার প্রোগ্রামটি তৈরি করতে ব্যবহার করব?


আপনি যদি ইনস্টল করতে চান তবে আপনাকে gcc-4.8ব্যবহার করা দরকার sudo apt-get install gcc-4.8gcc-4.9, gcc-4.8, gcc-4.7, gcc-4.6সব আছে উবুন্টুর প্রধান রেপো

1
@ ডুমিন্ডু তবে আমি কীভাবে gcc-4.9বিশেষভাবে ব্যবহার করব ?
নিকোলাই লেশচভ

অন্যদের আনইনস্টল করুন এবং 4.9 ইনস্টল করুন।

2
@ ডুমিন্ডু অপেক্ষা করুন, আমি কি শুধু আমাকে যা করেছি তা করতে বলে? এটা কাজ করছে না.
নিকোলাই লেসচভ

রুট ব্যবহারকারীতে স্যুইচ করুন: sudo su -গেস্টো /usr/binতারপর চালান ls -l gcc*এবং আপনার আউটপুট পোস্ট করুন। তাহলে আমি আপনার উত্তর পোস্ট করব।
нιηসнιη

উত্তর:


196

সঠিকভাবে gcc-4.9 ইনস্টল করার সর্বোত্তম উপায় এবং এটিকে আপনার ডিফল্ট জিসিসি সংস্করণ ব্যবহার হিসাবে সেট করুন:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9 g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9

--slaveসঙ্গে g++, কারণ হবে g++সহ পরিবর্তিত হতে gccএকই সংস্করণে। তবে, এই মুহুর্তে জিসিসি-৪.৯ আপনার একমাত্র সংস্করণটি কনফিগার করা হবে update-alternatives, সুতরাং এতে ৪.৮ যোগ করুন update-alternatives, সুতরাং আসলে বিকল্পটি রয়েছে, ব্যবহার করে:

sudo apt-get install gcc-4.8 g++-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8

তারপরে আপনি কোনটি সেট করা আছে তা যাচাই করতে পারেন এবং এটি ব্যবহার করে পিছনে পিছনে পরিবর্তন করতে পারেন:

sudo update-alternatives --config gcc

দ্রষ্টব্য: আপনি পিপিএ সংগ্রহস্থলটি ইনস্টল করতে পারেন এবং কেবল ব্যবহার করতে পারেন /usr/bin/gcc-4.9-baseতবে আমি নতুন আপডেট হওয়া সরঞ্জামচয়নগুলি ব্যবহার করতে পছন্দ করি।


জিসিসি 5.X বা 6, প্যাকেজ (এবং সঙ্গতিপূর্ণভাবেই, কমান্ড) শুধু বলা হয় gcc-5, gcc-6ইত্যাদি এই পরিবর্তনের কারণে হয় জিসিসি এর সংস্করণ স্কিম , যেখানে 5.1 প্রথম জিসিসি 5 রিলিজ, এবং ভবিষ্যতে 5.X রিলিজ বাগ সংশোধন জন্য হয়


@ মুরু সম্পাদনা করার জন্য ধন্যবাদ ... যেমন আমি নীচে বলেছি, আমি প্রায় 3 দিন খুব ক্লান্ত ছিলাম এবং আপডেট-এর বিকল্পগুলির জন্য সুডোর প্রয়োজন হয় এবং আমি মনে করি আমি দাসের আগে (-) ভুলে গেছি। :) তাই আপনাকে ধন্যবাদ.
সুডুসূট

চেষ্টা করুনsudo apt-get -f install
সুডুসূট

4
এটি পুরোপুরি কাজ করে। এছাড়াও, উবুন্টুতে জিসিসি 5 কাজ করার 5জন্য বিকল্প 4.9করুন। (আমার উন্নয়ন দলটি এখন আপনার পদ্ধতি অনুসরণ করে একে অপরের সাথে 4.9 এবং 5 উভয়ই চালায় runs) আপনাকে ধন্যবাদ, এবং +1!
কোডমাউস

2
@ হাওয়াত এটি আপাতত কাজ করা উচিত gcc-6
এডউইনকস্ল

1
এটি আমাকে বেশ কয়েকবার সহায়তা করেছে, তবে আমি সর্বদা ভুলে যাই - আপনি ব্যবহার করতে পারেন এমন জিএনইউ সংকলক সংগ্রহের অন্যান্য ইউটিলিটিগুলিতে একই সমাধানটি প্রয়োগ করার বিষয়টি নিশ্চিত করুন! উদাহরণস্বরূপ, জিসিওভি কোনও সংস্করণ মেলে না এমন বিষয়ে অভিযোগ করবে যদি আপনি না করেন, সম্ভবত ভুল ডেটা তৈরি করে।
টবি

23

টুলচেন টেস্ট বিল্ডস পিপিএ ব্যবহার করুন :

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9

আমি মনে করি না যে জিসিসি 4.9 সম্পূর্ণভাবে উবুন্টু 14.04 এর জন্য উপলব্ধ। বেস প্যাকেজ ( gcc- 4.9- বেস ) এবং GCC Go 4.9 সংকলক ( gccgo-4.9 ) উপলভ্য, তবে অন্যান্য সীমানা নেই। কেন জানি না।


1
@ সুদুরসুর এটি ডিফল্ট হিসাবে সেট করা বা নাও থাকতে পারে, এটি আমার উদ্বেগ নয় (এর সাথে লেনদেনের অন্যান্য পোস্ট রয়েছে)। যাইহোক, যে জিসিসি 4.9 এর সি এবং সি ++ সীমানা 14.04 এ সম্পূর্ণরূপে অফিসিয়াল সংগ্রহস্থল থেকে ইনস্টল করা যেতে পারে তা স্পষ্টতই মিথ্যা, যেহেতু gcc-4.9-baseপ্যাকেজটিতে বাইনারি সীমানা থাকবে না এবং এতে থাকবে না।
মারু

আপনি বেস প্যাকেজ সম্পর্কে সঠিক। আপনি আমার উত্তর হিসাবে দেখতে পাবেন, আমি পিপিএ ব্যবহার করেছি। আমি মন্তব্যটি প্রথমে পোস্ট করেছি, তারপরে প্রশ্ন থেকে বর্ণিত প্রশ্নের উত্তর দিয়েছি ... কারণ কেবল পিপিএ যুক্ত করা এবং 4.9 ইনস্টল করা এটি সক্ষম করে না যা "জিসিসি ৪.৯ ব্যবহার করতে" প্রয়োজন। আমি প্রশ্নের উত্তর দেওয়ার পরে আমার মন্তব্যটি মুছে ফেলা উচিত ছিল। আমি ক্ষমা প্রার্থনা করছি. আমার উত্তর হ'ল কিসের দিকে মনোনিবেশ করা উচিত। আমি সিদ্ধান্তে ঝাঁপিয়েছি ... এবং দ্রুত মন্তব্য করেছি। আমি ডেডিকেটেড সার্ভার পেয়েছি বলে আমি 14.04 ব্যবহার করে আসলেই বেশ নতুন। আমি নিশ্চিত হয়েছি যে আমি ভোটকে নামিয়েছি না এবং আমি যদি তা করি তবে তা ঠিক করব।
সুডুসূট

@ সুডুসূট ঠিক আছে। এমনকি, তাই যদি না ওপি কলিং সঙ্গে একটি সমস্যা আছে gcc-4.9বা g++-4.9পরিবর্তে gccবা g++, আমি বিকল্প আপডেট না বিদ্ধ হবে।
মুড়ু

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

সর্বশেষতম প্যাকেজটি জিসিসি -7 এটিএম
এল্ডার গীক

5

উবুন্টু 16.04 এবং তারপরে

আপনি ইতিমধ্যে ডিফল্ট সংগ্রহস্থলগুলি থেকে উবুন্টু 18.04 এ জিসিসি 7.0 ইনস্টল করতে পারেন। উবুন্টু 17.10, 18.04 এবং 18.10 এ জিসিসি -7 ইনস্টল করতে টার্মিনালটি খুলুন এবং টাইপ করুন:

sudo apt install gcc-7 

উবুন্টু 18.04 এ জিসিসি -8 ইনস্টল করতে এবং পরে টার্মিনালটি খুলুন এবং টাইপ করুন:

sudo apt install gcc-8

উবুন্টু 19.04 এ জিসিসি -9 ইনস্টল করতে এবং পরে টার্মিনালটি খুলুন এবং টাইপ করুন:

sudo apt install gcc-9

আপনি পিপিএ: জোনাথনফ / জিসিসি -7.1 থেকে উবুন্টু 16.04 এ জিসিসি -7 ইনস্টল করতে পারেন।

sudo add-apt-repository ppa:jonathonf/gcc-7.1  
sudo apt update  
sudo apt install gcc-7  

আপনি পিপিএ: জোনাথনফ / জিসিসি -8.0 থেকে উবুন্টু 16.04 এ জিসিসি -8 ইনস্টল করতে পারেন।

sudo add-apt-repository ppa:jonathonf/gcc-8.0  
sudo apt update  
sudo apt install gcc-8 

3

নির্দিষ্টভাবে জিসিসি ৪.৯ কল করতে, gcc-4.9কমান্ড প্রম্পটে ব্যবহার করুন ।

আপনি যে সমস্ত জিসিসি সংস্করণ ইনস্টল করেছেন সেগুলি শেষে হাইফেন এবং সংস্করণ নম্বর যুক্ত করে স্বতন্ত্রভাবে কল করা যেতে পারে gcc। আপনার ক্ষেত্রে, gcc-4.8এবং gcc-4.9পাওয়া উচিত। একটি টার্মিনালে, gcc-অন্য কোনও সংস্করণ ইনস্টল করা আছে কিনা তা দেখতে দুটি বার হাইফেন নোট করুন এবং পুশ ট্যাবটি টাইপ করুন।

মনে রাখবেন যে ডিফল্ট জিসিসি সম্ভবত এখনও 4.8। ( gcc -vএটি যাচাই করার জন্য ব্যবহার করুন Unfortunately) দুর্ভাগ্যক্রমে আপনি ডিফল্ট সংগ্রহস্থল থেকে gcc-4.9 ইনস্টল করেন যদি এটি কোনও আপডেট-বিকল্পের এন্ট্রি যোগ না করে তবে ডিফল্ট পরিবর্তন করা তুচ্ছ নয়। যদি আপনি কীভাবে ডিফল্ট পরিবর্তন করতে চান তবে এই প্রশ্নের উত্তর দেখুন ।


আমি কীভাবে একটি প্রকল্প মেকফিলের উপর নির্ভর করে এবং সম্ভবত অন্যান্য বিল্ড অবকাঠামো তৈরির gcc-4.9পরিবর্তে এর সাথে তৈরি করব gcc?
নিকোলাই লেসচভ

1
বিল্ড সিস্টেমগুলিতে gcc-4.9 ব্যবহৃত হয় তা নিশ্চিত করার সর্বোত্তম উপায় হ'ল ডিফল্ট জিসিসি পরিবর্তন করা। এটি করতে কীভাবে আমার উত্তরে প্রদত্ত লিঙ্কটি অনুসরণ করুন। বিকল্পভাবে আপনি একটি প্রতীকী লিঙ্ক তৈরি করতে পারেন, যদিও আমি জিসিসি আপডেট করার সময় প্যাকেজ ম্যানেজার অভিযোগ করতে পারে, কারণ এটি শেষ বিকল্প হিসাবে ব্যতীত আমি এর বিরুদ্ধে প্রস্তাব দিই। আপনি জিদ: sudo rm /usr/bin/gcc; sudo ln -s /usr/bin/gcc-4.9 /usr/bin/gcc। Gcc-4.8 ডিফল্টে ফিরে যেতে, কেবল gcc-4.9 এর সাথে gcc-4.8 প্রতিস্থাপন করুন। আপনার এটি জি ++ এবং অন্যান্য জিএনইউ সংকলকগুলির সাথেও করতে হবে।
হলোক্রনউইভার

জিসিসি 4.9 উবুন্টু 14.04 এ উপলব্ধ নেই ( জিসিসি গো সংকলক ব্যতীত ), সুতরাং এই উত্তর সম্ভবত উবুন্টু 14.10 এ কাজ করবে, এটি এখন সাহায্য করবে না। :-)
সেরেন ল্যাভবর্গ

প্রকৃতপক্ষে এটি উবুন্টু 14.04 এ উপলব্ধ, যদিও এটি কোনও ভুল হতে পারে: প্যাকেজস.বুন্টু . com/trusty/gcc-4.9-base । আমি এপ্রিল থেকে এটি ব্যবহার করে আসছি।
হলোক্রনউইভার

0

ঠিক আছে এই কাজ করতে দিন:

GCC   9 8 7 6 5 4
19.04 M D M M
18.10   D M M M
18.04 P M D M M
16.04 P P P P D M
  • ডি : ডিফল্ট জিসিসি

    sudo apt-get update
    sudo apt-get install gcc-X g++-X
    gcc-X --version
    

    gccপ্যাকেজটি যে কোনও উপকরণই রাখুন: https://packages.ubuntu.com/search?keywords=gcc

  • এম : মেইন রেপোতে উপস্থিত

    sudo apt-get update
    sudo apt-get install gcc-X g++-X
    gcc-X --version
    

    উদাহরণস্বরূপ: https://packages.ubuntu.com/search?keywords=gcc-7

  • পি : ppa:ubuntu-toolchain-r/test, যা উবুন্টু মানুষ মালিকানাধীন এবং সেইজন্য হয়, একটি ভাইরাস হতে না বিশ্বাস করা যাবে যদিও এটি সম্ভবত অস্থির হল:

    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    sudo apt-get update
    sudo apt-get install gcc-X g++-X
    gcc-X --version
    

    https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test

সমস্ত প্রশ্ন:

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