পিএইচপি এলডিএপি শিরোনামের গ্রন্থাগারগুলি খুঁজে না পেয়ে কনফিগার করেছে [বন্ধ]


9

আমি এলডিএপি বিকাশ শিরোনাম ইনস্টল করেছি:

apt-get install libldb-dev

এটি কয়েকটি ldap শিরোনাম যুক্ত করেছে:

root@crunchbang:/usr/include# ls -la ldap*
-rw-r--r-- 1 root root  9466 Apr 23  2013 ldap_cdefs.h
-rw-r--r-- 1 root root  1814 Apr 23  2013 ldap_features.h
-rw-r--r-- 1 root root 65213 Apr 23  2013 ldap.h
-rw-r--r-- 1 root root  9450 Apr 23  2013 ldap_schema.h
-rw-r--r-- 1 root root  3468 Apr 23  2013 ldap_utf8.h

যখন আমি ডিরেক্টরিটি কনফিগার করি এবং রেফারেন্স করি:

./configure --with-ldap=/usr/include

আমি এই ত্রুটি পেয়েছি:

...
checking for LDAP support... yes
checking for LDAP Cyrus SASL support... no
checking size of long int... 4
configure: error: Cannot find ldap libraries in /usr/include.

1
সার্ভার ত্রুটির জন্য পিএইচপি অফ-টপিক সংকলন সম্পর্কে একটি প্রশ্ন কীভাবে ? এইচআইএইচপি একটি সর্বব্যাপী "ব্যবসায়ের পরিবেশে ব্যবহৃত তথ্য প্রযুক্তি সিস্টেম" এবং আইটি পেশাদাররা সাধারণত এটি পরিচালনা করার দায়িত্বপ্রাপ্ত হয় তা এইচআইএইডি মডারেটররা কি সত্যই অবগত নন? তারা কি বুঝতে পারে না যে সংকলনকারী সার্ভার সফ্টওয়্যারটি একটি রুটি এবং মাখন সিস্টেম প্রশাসনের কাজ? এই প্রশ্নটি বন্ধ করার কোনও বৈধ কারণ নেই এবং এটি "অফ টপিক" হওয়া কেবল ফ্ল্যাট-আউট অবাস্তব।
গোলাদাস

@ গোলাদাস আপনাকে ধন্যবাদ! হ্যাঁ. এটি কীভাবে সার্ভার সম্পর্কিত নয় তা নিশ্চিত।
শন ওয়েলচ

উত্তর:


25

আমি ডকারের ধারকটিতে জড়িত পিএইচপি এক্সটেনশানগুলি পাওয়ার চেষ্টা করে এই সমস্যাটিতে ছুটলাম। এখানে আমার যা করতে হয়েছিল তা হল:

  1. apt-get install libldb-dev libldap2-dev
  2. ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so \ && ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so

ডকফেরাইল ....... আরএন অ্যাপ্লিকেশন আপডেট && অ্যাপ্লিকেশন-ইনস্টল করুন -y y libldap2-dev dev libldb-dev \ && ln -s /usr/lib/x86_64-linux-gnu/libldap.so / usr / lib / libldap.so \ && ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so
ধনী কে।

8

এটি আমার পক্ষে নিখুঁতভাবে কাজ করেছে।

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

apt-get install libldb-dev

এসও লিঙ্কার ফাইলগুলি তৈরি করুন:

updatedb --prunepaths=/mnt
cd /usr/lib

if [ ! -L liblber-2.4.so.2 ];
then
    ln -s "$(locate liblber-2.4.so.2)"
fi

if [ ! -L liblber-2.4.so.2.8.3 ];
then
    ln -s "$(locate liblber-2.4.so.2.8.3)"
fi

if [ ! -L liblber.so ];
then
    ln -s "$(locate liblber.so)"
fi

if [ ! -L libldap.so ];
then
    ln -s "$(locate libldap.so)"
fi

if [ ! -L libldap_r.so ];
then
    ln -s "$(locate libldap_r.so)"
fi

পিএইচপি কনফিগার করুন:

./configure --with-ldap=/usr


উত্তরের জন্য ধন্যবাদ. উবুন্টু বিশ্বাসভাজন জন্য, libldb-দেব ইনস্টল করার পরে, নিম্নলিখিত যথেষ্ট; sudo ln -s /usr/lib/i386-linux-gnu/liblber.so /usr/lib, sudo ln -s /usr/lib/i386-linux-gnu/libldap.so /usr/lib
ওয়াটওয়ার

এছাড়াও, নিশ্চিত করুন যে আপনি lib64 লাইব্রেরি পাথ নির্দিষ্ট করে দিচ্ছেন না কারণ এটি সংকলন ব্যর্থ হওয়ার নিশ্চিত-আগুনের উপায়। এটাই আসল ফিক্স! --with-libdir = lib64 \ // এই আমি উল্লেখ করছি
অগ্রগতি 4

3

এটি করার সর্বোত্তম উপায়, অফিশিয়ালি পিএইচপি ডকার ইমেজের ইস্যুগুলির এই মন্তব্য অনুসারে , libldap2-dev(ডেবিয়ান / উবুন্টুতে) ব্যবহার করছে এবং সাথে কল configureকরছে --with-libdir=lib/x86_64-linux-gnu


1

পিএইচপি সংস্করণ 5.6.20 ডিবিয়ান এবং ভিত্তিক: su aptitude install libldb-dev ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so তারপরে, এটি সংকলনের চেষ্টা করুন


1

আমার এই একই সমস্যা ছিল এবং উপরের উত্তরগুলির কোনওটিই সহায়তা করেনি। তারপরে পিএইচপি'র কনফিগার ফাইলটিতে কিছু খননের পরে আমি একটি আলাদা সমাধান খুঁজে পেয়েছি।

1) আপনি কোন lib পরিচালক ব্যবহার করছেন তা পরীক্ষা করুন। আপনি যদি স্যুইচটি ব্যবহার করেন --with-libdir=lib64তবে আপনার libldap.soসাথে অন্য .soফাইলগুলি থাকা উচিত /usr/lib64। আপনি যদি কোনও লিবিডির নির্দিষ্ট না করে থাকেন তবে .soফাইলগুলি অবশ্যই থাকা উচিত /usr/lib। যদি .soফাইলটি একটি মানসম্মত ডিরেক্টরিতে থাকে (যেমন /usr/lib64) তবে আপনি সিডলিংকগুলি তৈরি করতে পারেন তবে আপনি লিবিডির নির্দিষ্ট করতে চান না।

2) সুইচ ব্যবহার করুন --with-ldap=yes

আমি ভাবছি কেন এটি কনফিগার সাহায্যে নথিভুক্ত করা হয় না।


আমার জন্য - ldap = হ্যাঁ পাওয়া গেছে।
ইয়াগো লিও

0

(ধরে নিচ্ছেন আপনি উবুন্টুতে রয়েছেন) দয়া করে চেষ্টা করুন configure --with-ldap-libs=/usr/lib/i386-linux-gnu/। যদি সহায়তা না করে তবে দয়া করে আপনার উত্তরটি আপনি লিনাক্স ডিস্ট্রো ব্যবহার করেন এবং কোন প্রকল্পটি নির্মাণ করছেন তার বিবরণ দিয়ে প্রসারিত করুন।


এটা চেষ্টা করেছি. কাজ করে না। configure: error: Cannot find ldap libraries in /usr/lib.
শন ওয়েলচ

উত্তর আপডেট করেছেন। অনুগ্রহ করে অনুসরণ করুন
yrk

আমি মনে করি না - ldap-libs সহ একটি বিকল্প। আমি চেষ্টা করেছি - ldap-dir সহ এবং এটি কাজ করে বলে মনে হয়েছিল কিন্তু যখন আমি একটি পিএইচপি এলডিপ ফাংশন ব্যবহার করার চেষ্টা করেছি তখন এটি কার্যকর হয়নি।
শন ওয়েলচ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.