কীভাবে গুগলস্টেস্টকে লিনাক্সে ভাগ করা লাইব্রেরি হিসাবে সেটআপ করতে হয়


89

দেবিয়ান আর gTest এর জন্য কোনও পূর্বনির্ধারিত প্যাকেজ সরবরাহ করে না। তারা আপনাকে আপনার প্রকল্পের মেকফিলের কাঠামোটি সংহত করার পরামর্শ দেয়। তবে আমি আমার মেকফিলটি পরিষ্কার রাখতে চাই। আমি পূর্ববর্তী সংস্করণগুলির মতো জিটিস্টেট কীভাবে সেট আপ করব (<1.6.0), যাতে আমি লাইব্রেরির সাথে লিঙ্ক করতে পারি?


4
বিটিডাব্লু, গেটেস্ট বিল্ডগুলি অটোটুলগুলি ব্যবহার করে পরিচালিত হয় যাতে স্ট্যান্ডার্ড ./configure && make && make installওয়ার্কফ্লোটি ঠিক কাজ করে should আমি নিশ্চিত নই যে এটি যদি কোনও পোস্টকে ওয়ারেন্ট দেয় তবে এটি উত্স থেকে অন্য অনেকগুলি প্যাকেজ সংকলন করার চেয়ে আলাদা নয়।
শন চিন

7
আমি অনুমান করি যে সমস্ত ব্যবহারকারী আপনার মতো অভিজ্ঞ নয়। আমি সম্প্রতি উইন্ডোজ থেকে লিনাক্স এ এসেছি এবং স্ট্যাকওভারফ্লোতে এই জাতীয় কিছু পেয়ে আমি খুশি হতাম।
ম্যানুয়েলস্কিনিড 3 ই

4
নোট করুন যে গুগল সুপারিশ করে আপনি কোনও গ্রন্থাগার তৈরি করবেন না, বরং এর পরিবর্তে আপনার প্রকল্পে জিটিস্ট কোড অন্তর্ভুক্ত করবেন। কোড. google.com/p/googletest/wiki/…
মাওগ

উত্তরে প্রথম নোটটি রাখে।
ম্যানুয়েলস্কিনিড 3 ই

4
@ মাওগের সরবরাহিত লিঙ্কটি ভেঙে গেছে (উইকিটি সরানো হয়েছিল), এটি কাজ করছে বলে মনে হচ্ছে তবে এমন পৃষ্ঠাতে নির্দেশ করে যা বিষয়টিতে নেই (যথেষ্ট বিভ্রান্তিকর)। প্রতিস্থাপন হিসাবে আমি যে সেরাটি খুঁজে পেতে পারি তা হ'ল এই বিল্ড নির্দেশিকাগুলি: github.com/google/googletest/blob/master/googletest/README.md যাইহোক এটি কেবল cmake দিয়ে কীভাবে তৈরি করবেন তা ব্যাখ্যা করে। অটোটুলগুলির জন্য, আমি সর্বোত্তম কাজের জন্য নিম্নলিখিত উত্তরটি পেয়েছি: stackoverflow.com/a/36000856/1487069
কার্লো উড

উত্তর:


144

আপনি গুগল থেকে এই নোটটি পড়েছেন এবং বুঝতে পেরেছেন তা নিশ্চিত করার আগে ! এই টিউটোরিয়ালটি গেমস্ট ব্যবহার করে সহজ করে তোলে, তবে দুষ্টু বাগগুলি প্রবর্তন করতে পারে ।

1. গুগলতেস্ট ফ্রেমওয়ার্ক পান

wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz

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

২. গুগল পরীক্ষা আনপ্যাক এবং বিল্ড করুন

tar xf release-1.8.0.tar.gz
cd googletest-release-1.8.0
cmake -DBUILD_SHARED_LIBS=ON .
make

৩. আপনার সিস্টেমে শিরোনাম এবং libs "ইনস্টল" করুন।

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

sudo cp -a googletest/include/gtest /usr/include
sudo cp -a googlemock/gtest/libgtest_main.so googlemock/gtest/libgtest.so /usr/lib/

4. লিঙ্কারের ক্যাশে আপডেট করুন

... এবং পরীক্ষা করুন যে জিএনইউ লিঙ্কার ল্যাবগুলি জানে

sudo ldconfig -v | grep gtest

যদি আউটপুটটি এমন দেখাচ্ছে:

libgtest.so.0 -> libgtest.so.0.0.0
libgtest_main.so.0 -> libgtest_main.so.0.0.0

তাহলে সবকিছু ঠিক আছে।

gTestframework এখন ব্যবহারের জন্য প্রস্তুত। কেবলমাত্র আপনার প্রকল্পটিকে -lgtestলিঙ্কার পতাকা হিসাবে সেট করে এবং allyচ্ছিকরূপে আপনার প্রকল্পের লিঙ্ক করতে ভুলবেন না , যদি আপনি নিজের টেস্ট মেনরোটিন প্রকাশ না করেন -lgtest_main

এখান থেকে আপনি গুগলস ডকুমেন্টেশন এবং ফ্রেমওয়ার্ক সম্পর্কে পুরানো ডক্সে এটি কীভাবে কাজ করে তা জানতে যেতে চাইতে পারেন । শুভ কোডিং!

সম্পাদনা: এটি ওএস এক্সের জন্যও কাজ করে! দেখুন "কিভাবে সঠিকভাবে OS X এর সেটআপ googleTest থেকে"


4
make installলাইব্রেরি এবং শিরোনামগুলি ম্যানুয়ালি অনুলিপি করার পরিবর্তে আপনি ব্যবহার করতে পারেন এমন কোনও লক্ষ্য নেই ?
শন চিন

14
'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system.
মেকফাইলটির

1.8.0 সংস্করণে ফাইলগুলির নাম পরিবর্তন করা হয়েছে? include/gtestআমি যতদূর বলতে পারি সেখানে নেই ।
নুবেকে

4
আপনার পোস্টটি পুরানো। দয়া করে মানুষকে বিভ্রান্ত করবেন না, sudo cp -a libgtest_main.so libgtest.so /usr/lib/আর কাজ করবেন না। ফাইলটি শুরু করার মতো নেই।
Schütze

আমি আরও জানতে চাইছি কেন ডেবিয়ান পূর্ব-ইনস্টল করা শেয়ার্ড লাইব্রেরিটি অপসারণ করেছে (তারা প্রবাহের সুপারিশ অনুসারে এটি করেছে: bugs.debian.org/cgi-bin/bugreport.cgi?bug=802587 )। সেখানে দেওয়া উইকি লিঙ্কটি আর উপস্থিত নেই। তাহলে কেন এই মামলা ছিল?
কার্লো উড

33

আমাকে উবুন্টু ব্যবহারকারীদের জন্য এটির বিশেষভাবে উত্তর দিন। প্রথমে গেষ্টেস্ট ডেভলপমেন্ট প্যাকেজ ইনস্টল করে শুরু করুন।

sudo apt-get install libgtest-dev

মনে রাখবেন যে এই প্যাকেজটি কেবল উত্স ফাইল ইনস্টল করে। প্রয়োজনীয় লাইব্রেরী ফাইলগুলি তৈরি করতে আপনাকে কোডটি নিজেই সংকলন করতে হবে। এই উত্স ফাইলগুলি / usr / src / gest এ থাকা উচিত। এই ফোল্ডারে ব্রাউজ করুন এবং লাইব্রেরিটি সংকলন করতে cmake ব্যবহার করুন:

sudo apt-get install cmake # install cmake
cd /usr/src/gtest
sudo mkdir build
cd build
sudo cmake ..
sudo make
sudo make install

এখন আপনার প্রোগ্রামগুলি গেমস্ট ব্যবহার করে এমন সংকলন করতে আপনাকে এটির সাথে লিঙ্ক করতে হবে:

-lgtest -lgtest_main -lpthread

এটি আমার জন্য উবুন্টু 14.04LTS এ পুরোপুরি কাজ করেছিল।


4
আসলে আপনাকে ম্যানুয়ালি লাইব্রেরি অনুলিপি করতে হবে না, মেকফাইলে এর জন্য একটি লক্ষ্য রয়েছে। আপনি কেবল এটির মতো এটি করতে পারেন: sudo apt-get ইনস্টল cmake # ইনস্টল cmake cd / usr / src / gest sudo cmake CMakeLists.txt sudo make install that should be copy and copy / usr / સ્થાનિક / lib /
আলেকজান্ডার জিনোভিয়েভ

4
@ আলেকজান্ডারজিনোয়েভ আমি পেয়েছি "মেক করুন: *** 'ইনস্টল' টার্গেট করার কোনও নিয়ম নেই। থামুন।" আমি যখন "সুডো মেক ইনস্টল"
সম্পাদন করি

4
"সুডো মেক ইনস্টল" উবুন্টু 18.04 এ কাজ করেছে, তবে উবুন্টু 16.04 এ কাজ করে নি।
আহমেদ নাসার

4
@ আহমেদনাছার: "সুডো মেক ইনস্টল" "সুডো সিপি * .এ / ইউএসআর / লিবিব" এর মতোই কাজ করে। সুতরাং, যদি জেনারেট করা
মেকফাইলে

ম্যানুয়ালি করার দরকার নেই sudo cp *.a /usr/lib, এটি ভাল করে দেওয়া sudo make installউচিত।
লিঙ্গজিয়ানকং

26

এটি বের করতে আমার কিছুটা সময় লেগেছে কারণ স্বাভাবিক "মেক ইনস্টল" সরানো হয়েছে এবং আমি চটকে ব্যবহার করি না। ভাগ করে নেওয়ার জন্য আমার অভিজ্ঞতা এখানে। কাজ, আমি, তাই আমি আমার home ডিরেক্টরির অধীনে Google পরীক্ষা ফ্রেমওয়ার্ক ইনস্টল লিনাক্স রুট অ্যাক্সেস না থাকে: ~/usr/gtest/

নমুনা বিল্ডের পাশাপাশি ভাগ করে নেওয়া লাইব্রেরি হিসাবে প্যাকেজটি ~ / usr / gest / এ ইনস্টল করতে:

$ mkdir ~/temp
$ cd ~/temp
$ unzip gtest-1.7.0.zip 
$ cd gtest-1.7.0
$ mkdir mybuild
$ cd mybuild
$ cmake -DBUILD_SHARED_LIBS=ON -Dgtest_build_samples=ON -G"Unix Makefiles" ..
$ make
$ cp -r ../include/gtest ~/usr/gtest/include/
$ cp lib*.so ~/usr/gtest/lib

ইনস্টলেশনটি বৈধকরণের জন্য, নিম্নলিখিত পরীক্ষার টেস্ট.কে সাধারণ পরীক্ষার উদাহরণ হিসাবে ব্যবহার করুন:

    #include <gtest/gtest.h>
    TEST(MathTest, TwoPlusTwoEqualsFour) {
        EXPECT_EQ(2 + 2, 4);
    }

    int main(int argc, char **argv) {
        ::testing::InitGoogleTest( &argc, argv );
        return RUN_ALL_TESTS();
    }

সংকলন করতে:

    $ export GTEST_HOME=~/usr/gtest
    $ export LD_LIBRARY_PATH=$GTEST_HOME/lib:$LD_LIBRARY_PATH
    $ g++ -I $GTEST_HOME/include -L $GTEST_HOME/lib -lgtest -lgtest_main -lpthread test.cpp 

4
শেষ লাইনের সাথে আমি ত্রুটি পেয়েছি: / usr / bin / ld: /tmp/cczG727X.o: '_ZN7testing4TestC2Ev' প্রতীকটির অপরিবর্তিত রেফারেন্স। আমি লাইব্রেরিগুলির আগে এই প্লেসিং টেস্ট.পি.পি. স্থির করেছি। অর্থাত্: g ++ test.cpp -I $ GTEST_Home / অন্তর্ভুক্ত -L $ GTEST_Home / lib -lgtest -lgtest_main -lpthread
user9869932

যদি জেস্ট_মাইন ( lgtest_main) এর সাথে লিঙ্ক করে থাকে mainতবে পরীক্ষার ফাইলে আপনার নিজস্ব সংজ্ঞা দেওয়ার দরকার নেই ।
জিনো মেমপিন

10

আপনি যদি সিএমকে ব্যবহার করে থাকেন তবে আপনি এখানেExternalProject_Add বর্ণিত হিসাবে ব্যবহার করতে পারেন ।

এটি আপনাকে আপনার ভান্ডারটিতে জাস্টেস্ট সোর্স কোড রাখতে বা এটিকে যে কোনও জায়গায় ইনস্টল করা এড়িয়ে চলে। এটি আপনার বিল্ড ট্রিতে স্বয়ংক্রিয়ভাবে ডাউনলোড এবং বিল্ট হয়।


3

ডেবিয়ান / উবুন্টুর জন্য আপডেট

গুগল মক (প্যাকেজ google-mock:) এবং গুগল টেস্ট (প্যাকেজ libgtest-dev:) একত্রিত করা হয়েছে। নতুন প্যাকেজ বলা হয় googletest। পুরানো দুটি নামই এখনও পিছনের সামঞ্জস্যের জন্য উপলব্ধ এবং এখন নতুন প্যাকেজের উপর নির্ভর করে googletest

সুতরাং, প্যাকেজ সংগ্রহস্থল থেকে আপনার গ্রন্থাগারগুলি পেতে, আপনি নিম্নলিখিতটি করতে পারেন:

sudo apt-get install googletest -y
cd /usr/src/googletest
sudo mkdir build
cd build
sudo cmake ..
sudo make
sudo cp googlemock/*.a googlemock/gtest/*.a /usr/lib

এর পরে, আপনি -lgmock(বা -lgmock_mainযদি আপনি কোনও কাস্টম প্রধান পদ্ধতি ব্যবহার না করেন) এর বিরুদ্ধে লিঙ্ক করতে পারেন এবং -lpthread। এটি আমার ক্ষেত্রে কমপক্ষে গুগল টেস্ট ব্যবহারের জন্য যথেষ্ট ছিল।

আপনি যদি গুগল টেস্টের সর্বাধিক বর্তমান সংস্করণ চান তবে এটি গিথব থেকে ডাউনলোড করুন। এর পরে, ধাপগুলি একই রকম:

git clone https://github.com/google/googletest
cd googletest
sudo mkdir build
cd build
sudo cmake ..
sudo make
sudo cp lib/*.a /usr/lib

যেমন আপনি দেখতে পাচ্ছেন, লাইব্রেরিগুলি তৈরি করার পথটি পরিবর্তিত হয়েছে। মনে রাখবেন যে খুব শীঘ্রই প্যাকেজ সংগ্রহস্থলের জন্য নতুন পথটি বৈধ হতে পারে।

ম্যানুয়ালি লাইব্রেরিগুলি অনুলিপি করার পরিবর্তে আপনি ব্যবহার করতে পারেন sudo make install। এটি "বর্তমানে" কাজ করে তবে সচেতন থাকবেন যে এটি সর্বদা অতীতে কাজ করে না। এছাড়াও, এই কমান্ডটি ব্যবহার করার সময় আপনার লক্ষ্য লক্ষ্যটির উপর নিয়ন্ত্রণ নেই এবং আপনি দূষণ করতে নাও চান /usr/lib


1

আমি একইভাবে এই পরিস্থিতির দ্বারা উদ্বিগ্ন হয়ে পড়েছিলাম এবং এর জন্য আমার নিজের উবুন্টু উত্স প্যাকেজ তৈরি শেষ করেছি। এই উত্স প্যাকেজগুলি আপনাকে সহজেই একটি বাইনারি প্যাকেজ উত্পাদন করতে দেয়। তারা এই পোস্ট হিসাবে সর্বশেষতম গেমস্ট এবং gmock উত্স উপর ভিত্তি করে।

গুগল পরীক্ষা ডিইবি উত্স প্যাকেজ

গুগল মক ডিইবি উত্স প্যাকেজ

বাইনারি প্যাকেজ তৈরি করতে এটি করুন:

tar -xzvf gtest-1.7.0.tar.gz
cd gtest-1.7.0
dpkg-source -x gtest_1.7.0-1.dsc
cd gtest-1.7.0
dpkg-buildpackage

এটি আপনাকে বলতে পারে যে আপনার কিছু প্রাক-প্রয়োজনীয় প্যাকেজ দরকার যেখানে আপনাকে কেবল এগুলি ইনস্টল করতে হবে। তা ছাড়া, বিল্ট .deb বাইনারি প্যাকেজগুলি তখন পিতামাতার ডিরেক্টরিতে বসে থাকতে হবে।

GMock এর জন্য, প্রক্রিয়াটি একই।

পার্শ্ব নোট হিসাবে, আমার উত্স প্যাকেজগুলির সাথে সুনির্দিষ্ট না হওয়া সত্ত্বেও, আপনার ইউনিট পরীক্ষার সাথে গেষ্টকে সংযুক্ত করার সময়, জাস্টটি প্রথমে অন্তর্ভুক্ত রয়েছে তা নিশ্চিত করুন ( https://bbs.archlinux.org/viewtopic.php?id=156639 ) এটি দেখে মনে হচ্ছে সাধারণ গোটচা


আমি যখন সংকলনের চেষ্টা করি তখন আপনার প্যাকেজটি আমাকে ত্রুটি দেয়। কোন কারণ কেন ?? এখানে আমার লগ টেস্ট কোডপিপি :( টেক্সট + 0x57): testing::Message::Message()' test.cpp:(.text+0x84): undefined reference to পরীক্ষার অনির্ধারিত রেফারেন্স :: অভ্যন্তরীণ :: অ্যাসেটহেল্পার :: আসর্টহেল্পার (টেস্টিং :: টেস্টপার্টসাল্ট :: টাইপ, চর কনস্ট *, ইনট, চর কনস্ট *) 'পরীক্ষা। cpp :(। পাঠ্য + 0x97): `টেস্টিং :: অভ্যন্তরীণ :: AssertHelper :: অপারেটর = (টেস্টিং :: ম্যাসেজ কনস্ট এবং) কনস্টের ... এর অপরিজ্ঞাত রেফারেন্স এত দীর্ঘ যে আমি পুরো জিনিসটি পোস্ট করতে পারি না। আমি এটি একেবারে নতুন উবুন্টু 14.04 ভিএম-এ করেছি তাই প্রয়োজনীয় নির্ভরতা ছাড়া আর কিছুই ইনস্টল করা হয়নি।
ddelnano

@ ডিডেলানানো হ্যাঁ আমি এই ছোট গুগল পরীক্ষার রত্নেও এসেছি। দৃশ্যত ভাগ করা লাইব্রেরির ক্রমটি গুরুত্বপূর্ণ is গেস্টকে আপনার ইউনিট পরীক্ষার সাথে সংযুক্ত করার সময়, অন্যান্য লাইব্রেরির আগে গেস্টকে অন্তর্ভুক্ত করার চেষ্টা করুন। যখন আমি এই সমস্যাটি আঘাত করি, তখন এই লিঙ্কটি এটি আমার জন্য সমাধান করেছে: bbs.archlinux.org/viewtopic.php?id=156639
নিক

@ ডিডেলানানো, এছাড়াও যদি আপনার পরীক্ষার স্যুটটিতে একটি 'মাইন' সংজ্ঞায়িত না হয় তবে 'গেস্ট_মাইন' এর সাথে লিঙ্ক করতে ভুলবেন না।
নিক উইডন

আমি অন্য কোনও লাইব্রেরি অন্তর্ভুক্ত করিনি। আমার ফাইলে যা ছিল তা #include <gtest/gtest.h> TEST(MathTest, TwoPlusTwoEqualsFour) { EXPECT_EQ(2 + 2, 4); } int main(int argc, char **argv) { ::testing::InitGoogleTest( &argc, argv ); return RUN_ALL_TESTS(); }
হ'ল

কোন মন্তব্য না আমি মন্তব্যটি পোস্ট করার আগে পর্যন্ত ব্লগ পোস্টটি পড়িনি। এটি এখন অবশেষে কাজ করছে!
ddelnano

1

গতকাল (২০১-0-০6-২২) অন্য কেউ আমার মতো একই পরিস্থিতিতে পড়ে এবং ইতিমধ্যে পোস্ট করা পদ্ধতির সাথেও সফল হয় না - Lubuntu 14.04এতে নিম্নলিখিত কমান্ডগুলির শৃঙ্খলা ব্যবহার করে আমার পক্ষে কাজ করেছে:

git clone https://github.com/google/googletest
cd googletest
cmake -DBUILD_SHARED_LIBS=ON .
make
cd googlemock
sudo cp ./libgmock_main.so ./gtest/libgtest.so gtest/libgtest_main.so ./libgmock.so /usr/lib/
sudo ldconfig

1

আসকবুন্টুর এই উত্তরটি আমার পক্ষে কাজ করেছে। অন্যান্য বিকল্পগুলির চেয়ে কম ত্রুটি-ঝুঁকির চেয়ে সহজ বলে মনে হচ্ছে, যেহেতু এটি libgtest-devউত্স পেতে প্যাকেজ ব্যবহার করে এবং সেখান থেকে বিল্ডগুলি: /ubuntu/145887/why-no-library-files-installed-for-google- পরীক্ষা? উত্তরট্যাব = ভোট # ট্যাব-শীর্ষ

দয়া করে সেই উত্তরটি দেখুন, তবে শর্টকাট হিসাবে আমি এখানে পদক্ষেপগুলিও সরবরাহ করি:

sudo apt-get install -y libgtest-dev
sudo apt-get install -y cmake
cd /usr/src/gtest
sudo cmake .
sudo make
sudo mv libg* /usr/lib/

এর পরে, আমি আমার প্রকল্পটি তৈরি করতে পারি যা gtestকোনও সমস্যা ছাড়াই নির্ভর করে ।


1

/usr/libআপনার CMakeLists.txtফাইলে ন্যূনতম পরিবর্তনের প্রয়োজন হলে নিম্নলিখিত পদ্ধতিটি ডিরেক্টরিটিতে ম্যানুয়ালি জঞ্জাল এড়াতে পারে । এটি আপনার প্যাকেজ পরিচালককে পরিষ্কারভাবে আনইনস্টল করতে দেয় libgtest-dev

ধারণাটি হ'ল যখন আপনি libgtest-devপ্যাকেজটি পেয়ে যাবেন

sudo apt install libgtest-dev

উত্স লোকেশন সংরক্ষণ করা হয় /usr/src/googletest

আপনি কেবল CMakeLists.txtসেই ডিরেক্টরিতে আপনার নির্দেশ করতে পারেন যাতে এটি প্রয়োজনীয় নির্ভরতাগুলি খুঁজে পেতে পারে

কেবল FindGTestসঙ্গে প্রতিস্থাপনadd_subdirectory(/usr/src/googletest gtest)

শেষে, এটি দেখতে এইরকম হওয়া উচিত

add_subdirectory(/usr/src/googletest gtest)
target_link_libraries(your_executable gtest)

0

এটি উবুন্টু / ডেবিয়ান ভিত্তিক সিস্টেমে গুগল পরীক্ষা এবং মক লাইব্রেরি ইনস্টল করবে:

sudo apt-get install google-mock

ডেবিয়ান ভিত্তিক চিত্রটিতে গুগল ক্লাউডে পরীক্ষিত।


হুম, না, আমি মনে করি এটি কেবল ইনস্টল করে googlemockতবে এটি ইনস্টল করে না googletest(গেষ্টেস্ট)। কমপক্ষে আমার ক্ষেত্রে এটিই ঘটেছে।
জোতাডেপিকাস

0

এটি গেস্ট এবং জিএমক 1.7.0 উভয়ই তৈরি এবং ইনস্টল করবে:

mkdir /tmp/googleTestMock
tar -xvf googletest-release-1.7.0.tar.gz -C /tmp/googleTestMock
tar -xvf googlemock-release-1.7.0.tar.gz -C /tmp/googleTestMock
cd /tmp/googleTestMock
mv googletest-release-1.7.0 gtest
cd googlemock-release-1.7.0
cmake -DBUILD_SHARED_LIBS=ON .
make -j$(nproc)
sudo cp -a include/gmock /usr/include
sudo cp -a libgmock.so libgmock_main.so /usr/lib/
sudo cp -a ../gtest/include/gtest /usr/include
sudo cp -a gtest/libgtest.so gtest/libgtest_main.so /usr/lib/
sudo ldconfig

-1

১.৮.১-এর জন্য @ ম্যানুয়েলস্কিনিড3 আর এর উত্তরের ভিত্তিতে আমাকে করতে হয়েছিল:

wget github.com/google/googletar xf release-1.8.1.tar.gz 
tar xf release-1.8.1.tar.gz
cd googletest-release-1.8.1/
cmake -DBUILD_SHARED_LIBS=ON .
make

আমি তখন make installযা 1.8.1 এর জন্য কাজ করে বলে মনে হয়েছিল, কিন্তু @ ম্যানুয়েলস্কিনিড 3r অনুসরণ করে এর অর্থ হবে:

sudo cp -a googletest/include/gtest /usr/include
sudo cp -a googlemock/include/gmock /usr/include
sudo cp `find .|grep .so$` /usr/lib/

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