Answers:
මෙය ඩිස්ට්රෝ-ස්වාධීන * මෝස්තරයකින් කිරීමට ඔබට gd සමඟ ldconfig භාවිතා කළ හැකිය:
ldconfig -p | grep libjpeg
Libjpeg ස්ථාපනය කර නොමැති නම්, ප්රතිදානයක් නොමැත. එය ස්ථාපනය කර ඇත්නම්, ලබා ගත හැකි සෑම අනුවාදයක් සඳහාම ඔබට රේඛාවක් ලැබෙනු ඇත.
ඔබට අවශ්ය ඕනෑම පුස්තකාලයකින් libjpeg ප්රතිස්ථාපනය කරන්න, ඔබට පුස්තකාල ලබා ගත හැකිදැයි පරීක්ෂා කිරීමේ සාමාන්ය, ඩිස්ට්රෝ-ස්වාධීන * ක්රමයක් තිබේ.
කිසියම් හේතුවක් නිසා ldconfig වෙත මාර්ගය සකසා නොමැති නම්, සාමාන්යයෙන් එහි සම්පූර්ණ මාර්ගය භාවිතා කරමින් ඔබට එය ක්රියාත්මක කිරීමට උත්සාහ කළ හැකිය /sbin/ldconfig
.
** 99% වාරයක් *
bash: ldconfig: command not found
xfce සමඟ ඩෙබියන් x64 ජෙසී මත! ඩෙබියන් වෙබ් අඩවියේ නැවත
ldconfig
ලබා ගත නොහැක ( command not found
පෙන්වයි).
/sbin/ldconfig -p
මූල වීමට අවශ්ය නොවී මා වෙනුවෙන් වැඩ කරයි.
ඔබේ බෙදාහැරීමේ පැකේජ කළමණාකරු සමඟ ඔබට පරීක්ෂා කළ හැකිය (යෝග්යතාව, yum, ...) නමුත් ඔබ ඔබේ බෙදාහැරීම ලබා නොදුන් නිසා මට ඔබට නිවැරදි විධානය ලබා දිය නොහැක.
ක්රියාත්මක කිරීමට තවත් ක්රමයක් විය හැකිය gcc -ljpeg
, ඔබට 'ld: පුස්තකාලය -ljpeg සඳහා හමු නොවුනහොත්' එයින් අදහස් වන්නේ gcc විසින් පුස්තකාලය සොයාගෙන නොමැති බවයි (නමුත් එය ස්ථාපනය කර නොමැති බව එයින් අදහස් නොවේ), ඔබට 'නිර්වචනය නොකළ සංකේත වැනි යමක් ලැබුනහොත් : "_main", යොමු කර ඇත්තේ: ... 'එයින් අදහස් කරන්නේ libjpeg සොයාගෙන ඇති බවයි.
locate libjpeg; ls /usr/lib/libjpeg*; ls /lib/libjpeg*
පද්ධතිය තුළ ස්ථාපනය කර ඇති ලිබ් දැයි සොයා ගැනීමට වෙනත් ක්රමයක් වේ
එය පරීක්ෂා කිරීමට තවත් බොහෝ ක්රම තිබේ, ඔබ අපට තවත් සන්දර්භයක් ලබා දෙන්නේ නම් (ඔබ libjpeg ස්ථාපනය කර ඇත්දැයි පරීක්ෂා කර බැලිය යුත්තේ ඇයි) ඔබේ විශේෂිත නඩුව සඳහා හොඳම විසඳුම ඔබට ලබා දිය හැකිය.
මම කොහේද උපයෝගීතාව භාවිතා කරමි.
නියැදිය:
l1feh4ck3r@xxx:~$ whereis libjpeg
libjpeg: /usr/lib/libjpeg.so /usr/lib/libjpeg.a /usr/lib/libjpeg.la
මම මෙය භාවිතා කරමි:
gcc -lpng
ලිබ් ස්ථාපනය කළ විට, එය ලබා දෙයි:
undefined reference to 'main'
ලිබ් ස්ථාපනය කර නොමැති විට :
cannot find -lpng
ණය පදනම් කරගත් බෙදා හැරීම සඳහා ඔබට කළ හැකිය
dpkg -s packagename
නැතහොත් ඔබ ගොනු නාමය පමණක් දන්නේ නම්, භාවිතා කරන්න
locate filename
ගොනු නාමය සාමාන්යයෙන් libsomething.so [.version] වේ.
dpkg -s
පුස්තකාලයට වඩා සියුම්ව හෝ සැලකිය යුතු ලෙස වෙනස් විය හැකි සත්ය පැකේජ නාමය එයට අවශ්ය නිසා මට උපයෝගීතාවයේ සීමාවක් තිබේ. මම භාවිතා කරමිdpkg -s|grep LIBRARY
Redhat මත පදනම් වූ පද්ධති වලදී, පුස්තකාලයක් ස්ථාපනය කර තිබේද නැද්ද යන්න තහවුරු කර ගැනීමට කෙනෙකුට pkg-config භාවිතා කළ හැකිය. බොහෝ ආර්පීඑම් ද්විමයන් ස්ථාපනය සමඟ ඉදිරියට යාමට පෙර එකම චෙක්පත් සිදු කරයි, එබැවින් අපට එහි නිරවද්යතාවය මත සාධාරණව විශ්වාසය තැබිය හැකිය.
pkg-config --cflags jpeg
pkg-config --libs jpeg
pkg-config --cflags "jpeg >= 1.0.0" # for version check
pkg-config --modversion jpeg | awk -F. '{ printf "0x%02X%02X%02X\n",$1,$2,$3 }' #version check
මෙය සෑම විටම ලිනක්ස් හි වින්යාසකරණ මෙවලම් මඟින් සිදු කරයි.
Autocconf සහ KDevelop පිළිබඳ මෙම නිබන්ධනය දෙස බලන්න .
වෙනත් උපක්රම වැනි ldconfig
සහ වැනි විධානයන් භාවිතා කරනු ඇත dpkg
.
එය ස්ථාපනය කර ඇත්දැයි පරීක්ෂා කිරීමට ඔබට dpkg භාවිතා කිරීමට උත්සාහ කළ හැකිය.
dpkg --list | grep [some_key_words_of_your_lib]
CentOS මත, ඔබට මෙය උත්සාහ කළ හැකිය.
rpm -qa [lib_name]
pkg-config
ඒ වෙනුවට භාවිතා කරන්න.