මම ප්‍රභවයෙන් පැකේජයක් ගොඩනගන්නේ නම්, එය අස්ථාපනය කිරීම හෝ සම්පූර්ණයෙන්ම ඉවත් කිරීම කරන්නේ කෙසේද?


158

පහත දැක්වෙන එක් පැකේජයක් තැනීම සඳහා මම ප්‍රභව කේත භාවිතා කළෙමි:

./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib --with-package-name="Myplugin" --with-package-origin="http://www.ubuntu.org/" --enable-gtk-doc --disable-static
make
make install

නමුත් අවාසනාවකට මෙන්, එහි නවතම අනුවාදය සහ දෝෂ රාශියක් ඇති බව මම සොයා ගතිමි, එබැවින් මට එය ඉවත් කිරීමට / අස්ථාපනය කිරීමට අවශ්‍යය. නමුත් මම එය කරන්නේ කෙසේද? මම උත්සාහ කළ make clean; make uninstallනමුත් එය පවතින බව මට පෙනේ:

# pkg-config --list-all | grep Myplugin
myplugin-....
$ ls /usr/lib/myplugin/libXYZ.so
exist....

ඔබ දැන් මෙය ඉවත් කරන්නේ කෙසේද?

Answers:


197

සාමාන්යයෙන් ඔබට භාවිතා කළ හැකිය:

make uninstall

හෝ

sudo make uninstall

යෙදුම root ලෙස ස්ථාපනය කර ඇත්නම්.

නමුත් මෙය ක්‍රියාත්මක වන්නේ පැකේජයේ සංවර්ධකයා හොඳ අස්ථාපනය කිරීමේ රීතියක් ඇති කිරීමට සැලකිලිමත් වී ඇත්නම් පමණි.

ධාවනය කිරීමෙන් මෘදුකාංගය ස්ථාපනය කිරීමට භාවිතා කරන පියවර දෙස බැලීමට ඔබට උත්සාහ කළ හැකිය:

make -n install

ඉන්පසු එම පියවර අතින් ආපසු හැරවීමට උත්සාහ කරන්න.

අනාගතයේ දී ප්රශ්න ඇති කරගැනීමෙන් වළකින්න කිරීමට භාවිතා කිරීමට උත්සාහ checkinstallකරනවා වෙනුවට make installහැකි සෑම විටම (AFAIK සෑම විටම ඔබ සකස් කරන අතර එම අවස්ථාවේදීම ඇසුරුම් අනුවාදය දෙකම පවත්වා ගැනීමට ඔබට අවශ්ය නම්). එය ඔබේ ප්‍රියතම පැකේජ කළමණාකරු භාවිතයෙන් අස්ථාපනය කළ හැකි ඩෙබ් ගොනුවක් නිර්මාණය කර ස්ථාපනය කරනු ඇත.

make cleanසාමාන්‍යයෙන් ගොඩනැගිලි නාමාවලි පිරිසිදු කරයි, එය පැකේජය අස්ථාපනය නොකරයි. වෙනස් කළ ලිපිගොනු පමණක් නොව, සියල්ල සම්පාදනය කර ඇති බවට ඔබට සහතික වීමට අවශ්‍ය විට එය භාවිතා වේ.


මමත් ඒක කළා. Pkg-config සහ ls /usr/lib/myplugin/libXYZ.so

40
භාවිතා කිරීම සඳහා +1 checkinstall- එමඟින් මෙම සමස්ත ගැටළුවම වාෂ්ප වී යයි.
ඔලි

6
O ගූගල්: අස්ථාපනය කිරීම සිදු නොකරන්නේ නම්, ස්ථාපනය කළ දේ නිරීක්ෂණය කර එය අතින් අහෝසි කළ යුතුය.
ජේවියර් රිවේරා

4
මතක තබා ගත යුතු තවත් දෙයක් නම් , සාමාන්‍යයෙන් එය make installroot (උදා. sudo make install) ලෙස ධාවනය වූයේ නම් sudo make uninstall, මෘදුකාංගය ඉවත් කිරීම සඳහා ධාවනය කිරීම අත්‍යවශ්‍ය වේ .
එලියා කගන්

6
ඔබ දැනටමත් ධාවනය කර ඇත්නම් make install, ඔබට තවමත් භාවිතා කළ හැකිය checkinstall. සාමාන්‍යයෙන් නිර්මාණය කළ checkinstallසියල්ල නැවත ලියයි make install. ඊට පසු පමණක් භාවිතා කරන්න dpkg -r <package.deb>, එවිට සියල්ල ඉවත් කළ යුතුය.
user502144

28

මෙය දෝෂයක් යැයි මම නොසිතමි, මූලාශ්‍රයෙන් ස්ථාපනය කිරීමේදී චෙක් ඉන්ස්ටෝල් භාවිතා කිරීම ගැන කියවීම සහ ඉගෙන ගැනීම හොඳ අදහසකි.

ඔබට ගබඩාවලින් චෙක් ඉන්ස්ටෝල් ස්ථාපනය කළ හැකිය, පැකේජයේ කෙටි විස්තරයක්;

චෙක් ඉන්ස්ටෝල් විසින් ඔබේ ස්ථාපන ස්ක්‍රිප්ට් මඟින් නිර්මාණය කරන ලද හෝ වෙනස් කරන ලද සියලුම ලිපිගොනු ("ස්ථාපනය කරන්න" "install_modules සාදන්න", "සැකසුම" යනාදිය) නිරීක්ෂණය කරයි, සම්මත ද්විමය පැකේජයක් ගොඩනඟා එය ඔබේ පද්ධතිය තුළ ස්ථාපනය කර එය අස්ථාපනය කිරීමේ හැකියාව ලබා දෙයි. ඔබේ බෙදාහැරීමේ සම්මත පැකේජ කළමනාකරණ උපයෝගිතා.

වඩා හොඳ අවබෝධයක් ලබා ගැනීමට පහත මෙම සබැඳි ප්‍රයෝජනවත් විය හැකිය. http://en.wikipedia.org/wiki/CheckInstall

http://checkinstall.izto.org/


16

මෙය දෝෂයක් නොවේ - ප්‍රභවයෙන් සම්පාදනය කිරීම ඇසුරුම් කළමණාකරණ පද්ධතිය (මෘදුකාංග මධ්‍යස්ථානය විසින් භාවිතා කරනු ලබන) සම්පූර්ණයෙන්ම මඟ හරින මෘදුකාංග ස්ථාපනය කිරීමේ සහය නොදක්වන ක්‍රමයකි.

ප්‍රභවයෙන් සම්පාදනය කරන ලද මෘදුකාංගයක් ස්ථාපනය කර හෝ අස්ථාපනය කර ඇති බවට සම්මත ක්‍රමයක් නොමැත, එබැවින් උබුන්ටු කුමක් කළ යුතු දැයි දැන ගත නොහැක. මෘදුකාංගය ස්ථාපිත වැඩසටහනක් ලෙස ලැයිස්තුගත කර නොමැත.

එවැනි අභිරුචි මෘදුකාංග ස්ථාපනය කිරීම සහ ඉවත් කිරීම සඳහා ඔබ බෙදාහරින්නාගේ උපදෙස් අනුගමනය කළ යුතුය. ඇසුරුම් කළමණාකරණ පද්ධතිය භාවිතා කළ හැකි වන පරිදි ඩෙබියන් පැකේජයක් නිර්මාණය කරන ලෙස ඉල්ලීමට ඔබට සංවර්ධකයා සම්බන්ධ කර ගත හැකිය.


3

එය දෝෂයක් නොවේ, සංවර්ධකයින් ප්‍රභවයන් හරහා බෙදා හැරීම සඳහා යොමු වන විට සිදු වන්නේ මිස දේශීය ඇසුරුම් ක්‍රම හරහා නොවේ.

Checkinstall හෝ dhbuild භාවිතා කිරීමෙන් ඔබේ මූලාශ්‍ර ලිපිගොනු පැකේජ බවට පත් කර ගත හැකිය. අවංකවම, මගේ මතය අනුව - නව පරිශීලකයින් ප්‍රභවයෙන් ස්ථාපනය කිරීමෙන් වැළකී සිටිය යුතු අතර සංවර්ධකයින් ප්‍රභවයෙන් පමණක් බෙදා හැරීමෙන් වැළකී සිටිය යුතුය.


මම දනිමි නමුත් සමහර විට එය නොවැළැක්විය හැකිය ... මේ අවස්ථාවේ දී එය ඇත්ත වශයෙන්ම අවශ්‍ය නොවන කුඩා ක්‍රීඩාවක් වූ නමුත් කලකට පෙර මට MATLAB මගේ විශ්ව විද්‍යාලයේ භාවිතා කරන පරිගණකමය මෙවලමක් ස්ථාපනය කිරීමට සිදු වූ අතර ඒවා ප්‍රභවයෙන් එය ස්ථාපනය කිරීමට සිදුවිය. උබුන්ටු සඳහා ඩෙබ් ගොනුවක් නොමැත ... නමුත් මම අනිවාර්යයෙන්ම චෙක් ඉන්ස්ටෝල් සහ ඩබ්බිල්ඩ් ක්‍රම හරහා යන්නෙමි ... ස්තූතියි
nik90

1

"අස්ථාපනය කරන්න" සහය දක්වන පැකේජ කිහිපයක් ගැන මම දනිමි, නමුත් තවත් බොහෝ ආධාරක වේදිකාගත ස්ථාපනයන් සඳහා DESTDIR = xxx ස්ථාපනය කරන්න.

ප්‍රභවයෙන් කෙලින්ම ස්ථාපනය කරනවා වෙනුවට ඔබ ස්ථාපනය කරන පැකේජයක් නිර්මාණය කිරීමට ඔබට මෙය භාවිතා කළ හැකිය. මට චෙක් ඉන්ස්ටෝල් සමඟ වාසනාවක් නොතිබුණු නමුත් එෆ්පීඑම් ඉතා හොඳින් ක්‍රියා කරයි.

Make install භාවිතයෙන් කලින් ස්ථාපනය කර ඇති පැකේජයක් ඉවත් කිරීමටද මෙය ඔබට උපකාරී වේ. ඔබ විසින් සාදන ලද පැකේජය ස්ථාපනය කර ඇති එක මත ස්ථාපනය කිරීමට බල කර එය අස්ථාපනය කරන්න.

උදාහරණයක් ලෙස, මම මෙය මෑතකදී ප්‍රෝටෝබුෆ් -3.3.0 සමඟ කටයුතු කිරීමට භාවිතා කළෙමි. RHEL7 හි:

make install DESTDIR=dest
cd dest
fpm -f -s dir -t rpm -n protobuf -v 3.3.0 \
 --vendor "You Not RedHat" \
 --license "Google?" \
 --description "protocol buffers" \
 --rpm-dist el7 \
 -m you@youraddress.com \
 --url "http:/somewhere/where/you/get/the/package/oritssource" \
 --rpm-autoreqprov \
 usr

 sudo rpm -i -f protobuf-3.3.0-1.el7.x86_64.rpm
 sudo rpm -e protobuf-3.3.0      

ඔබට හැකි නම් rpm ට yum කැමති.

Debian9 මත:

make install DESTDIR=dest
cd dest
fpm -f -s dir -t deb -n protobuf -v 3.3.0 \
-C `pwd` \
--prefix / \
--vendor "You Not Debian" \
--license "$(grep Copyright ../../LICENSE)" \
--description "$(cat README.adoc)" \
--deb-upstream-changelog ../../CHANGES.txt \
 --url "http:/somewhere/where/you/get/the/package/oritssource" \
 usr/local/bin \
 usr/local/lib \
 usr/local/include

 sudo apt install -f *.deb
 sudo apt-get remove protobuf

ඔබට හැකි තැන dpkg ට යෝග්‍ය වන්න.

මම මෙම පිළිතුර ස්ටක් ඕවර් ප්‍රවාහයේ ද පළ කර ඇත්තෙමි


0

අස්ථාපනය කිරීම සැමවිටම ක්‍රියාත්මක නොවන බව අප සාකච්ඡා කළ යුතුය , එබැවින් පහත දැක්වෙන්නේ ක්‍රියාකාරී විසඳුමකි.

උබුන්ටු මෘදුකාංග මධ්‍යස්ථානයේ ඇති පැකෝ වැඩසටහන භාවිතා කිරීම මෙයට සම්බන්ධ වේ. අපි පැකෝ ස්ථාපනය කළ පසු, අපි වැඩසටහනක් "ස්ථාපනය කරන විට" එය ලොග් ප්‍රකාරය භාවිතා කළ හැකිය. පැකෝ ඔබේ "ස්ථාපනය කරන්න" සඳහා එතුමෙකු ලෙස ක්‍රියා කරන අතර විවිධ ඩිරෙක්ටරි වලට පිටපත් කරන ලද ගොනු ලැයිස්තුව සමඟ / var / log / paco නාමාවලියෙහි ලොගයක් සාදයි. එපමණක් නොව, පැකෝ ෆ්‍රන්ට් කෙළවරේ ඇති ගොනු ඔබට දැක ගත හැකිය.

උදාහරණයක් ලෙස මම ප්‍රභවයෙන් php සම්පාදනය කරන විට පහත සඳහන් දේ කළෙමි.

paco -lp php5 "make install"

L පරාමිතිය මඟින් පැකෝව ලොග් ප්‍රකාරයේදී ධාවනය කරයි. මෙය / var / log / paco හි php5 නමින් ලොග් ගොනුවක් නිර්මාණය කළේය (මා විධානයෙහි දී ඇති නම). ස්ථාපනය අතරතුර විවිධ සම්මත ස්ථානවලට පිටපත් කරන සියලුම ගොනු එහි අඩංගු විය. ලිපිගොනු බැලීමට ඔබට විධාන රේඛා සංස්කාරකයක් හෝ පැකෝ ගුයි භාවිතා කළ හැකිය.

පහත දැක්වෙන්නේ sed විධාන රේඛා සංස්කාරකය භාවිතයෙන් ගොනු ලැයිස්තුව ලබා ගැනීමේ උදාහරණයයි
(php5 ඔබේ ගොනු නාමය සමඟ ප්‍රතිස්ථාපනය කරන්න).

cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'

ඔබ ලිපිගොනු ලැයිස්තුව ලබාගත් පසු, ඒවා මකා දැමිය යුතු ආකාරය ඔබ දන්නවාද? ඇත්ත වශයෙන්ම, ඉහත විධානයෙහි ප්‍රති results ල පහත දැක්වෙන පරිදි බැක්ටික්ස් භාවිතයෙන් rm වෙත යැවිය හැකිය :

sudo rm `cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'`

වැඩේ ඉවරයි!

සටහන: LD_PRELOAD සීමාවන් නිසා පැකෝට සියුඩ් වැඩසටහන් වල හෝඩුවාව අනුගමනය කළ නොහැක. මිනිසා පිටුව බලන්න.


0

මම හදපු php-5.6.30 මම ආපහු යන්න පහසුවෙන් අස්ථාපනය කරන්න scratch.Using සිට එය ස්ථාපනය කිරීමට තිබූ නිසා, OpenSSL එය නිසි ලෙස මානකර තොරව සිට ප්රභවය නෑ php සඳහා Makefile ලෙස වැඩ කටයුතු ඒ සඳහා පහසුකම් සපයන්නේ නැත.

කෙසේ වෙතත්, මෙම පියවර මා වෙනුවෙන් ක්‍රියාත්මක විය, - මම php හා සම්බන්ධ සියලුම ලිපිගොනු ලැයිස්තුගත කර ඒවා අතින් ඉවත් කළෙමි, දහඩිය නොබිඳී විනාඩි 5 ක් පමණ ගත විය. ඔබේ සම්පාදිත මෘදුකාංගය අස්ථාපනය කිරීමට ඔබට මෙම පියවර භාවිතා කළ හැකිය.

ඔබට අස්ථාපනය කිරීමට අවශ්‍ය මෘදුකාංගය සමඟ php ආදේශ කරන්න

whereis php

ඉහත විධානය මඟින් ද්විමය ස්ථාපනය කර ඇති නාමාවලි ලැයිස්තුගත කරයි උදා: / usr / local / bin / php, / usr / bin / php .. ඔබේ ප්‍රතිදානයේ ලැයිස්තුගත කර ඇති එක් එක් ගොනුව / නාමාවලිය ඉවත් කරන්න.

sudo rm -f /usr/local/bin/php

ඉහත ප්‍රතිදානයේ ලැයිස්තුගත කර ඇති සියලුම ලිපිගොනු සමඟ මෙය කරන්න, ඔබ මුල සිටම නවතම අනුවාදය ස්ථාපනය කිරීමට සූදානම්ය.


0

ඔබ පරිශීලකයා ස්ථාපනය කර අස්ථාපනය කිරීම ක්‍රියා නොකරන්නේ නම් ඔබට ස්ථාපිත ගොනු අතින් ඉවත් කළ හැකිය.

නැවත සේවය නතර කරන්න:

service redis_6379 stop

දැන් Redis සේවාදායකයට සම්බන්ධ සියල්ල / usr / local / bin / වෙතින් මකන්න:

rm /usr/local/bin/redis-*

රෙඩිස් වින්‍යාස ගොනු නාමාවලිය මකන්න:

rm -r /etc/redis/

පවතින රෙඩිස් දත්ත නාමාවලිය මකන්න:

rm -r /var/lib/redis/

පවතින Redis server init ස්ක්‍රිප්ට් මකන්න:

rm /etc/init.d/redis_*

පවතින Redis PID ගොනු ඉවත් කරන්න (පවතී නම් පමණි):

rm /var/run/redis_*

ඔබගේ සේවාදායකය නැවත අරඹන්න, දැන් රෙඩිස් ඔබගේ සේවාදායකයෙන් සම්පූර්ණයෙන්ම ඉවත් කර ඇත.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.