ফ্রিবিএসডি পোর্টস: কীভাবে আমি কোনও বন্দরের সমস্ত নির্ভরতা এবং সেই সমস্ত নির্ভরতার জন্য সমস্ত উপনির্ভরতা দেখতে পারি?


9

আমি একটি বন্দর তৈরির চেষ্টা করছি যা নির্ভর করে apache-ant

আমি ভেবেছিলাম যে আমি make build-depends-listএই বন্দরের প্রয়োজনীয় সমস্ত নির্ভরতা দেখতে দৌড়াতে পারি :

# make build-depends-list
/usr/ports/devel/apache-ant
/usr/ports/java/jdk16
/usr/ports/math/gmp

তবে সবকিছু ইনস্টল করার পরে, বন্দরটির একটি নির্ভরতা তালিকা ছিল যা মাইল দীর্ঘ ছিল:

apache-ant-1.8.1 desktop-file-utils-0.15_2 gamin-0.1.10_4 gettext-0.18.1.1 gio-fam-backend-2.26.1 glib-2.26.1_1 gmp-5.0.1 inputproto-2.0 javavmwrapper-2.3.5 kbproto-1.0.4 libX11-1.3.3_1,1 libXau-1.0.5 libXdmcp-1.0.3 libXext-1.1.1,1 libXi-1.3,1 libXtst-1.1.0 libiconv-1.13.1_1 libpthread-stubs-0.3_3 libxcb-1.7 pcre-8.12 perl-5.10.1_3 pkg-config-0.25_1 python26-2.6.6 recordproto-1.14 unzip-6.0 xextproto-7.1.1 xproto

এই নির্ভরতা তালিকাটি অভদ্র আশ্চর্য এবং আমি কোনও বন্দর ইনস্টল করার প্রতিশ্রুতি দেওয়ার আগে আমি এটি সম্পর্কে জানতে চাই।

কোনও বন্দরের জন্য সমস্ত নির্ভরতা এবং সমস্ত উপনির্ভরতা আমি কীভাবে দেখতে পারি?

উত্তর:


17

আপনি খুব কাছের। পরিবর্তে এটি চেষ্টা করুন:

make all-depends-list

এটি সমস্ত নির্ভরতার মধ্য দিয়ে পুনরাবৃত্তি করবে এবং এগুলি আপনার জন্য মুদ্রণ করবে। বিভিন্ন বিল্ডের দৃশ্যপটগুলি পরীক্ষা করতে এবং কীভাবে তারা নির্ভরতা তালিকাকে প্রভাবিত করে, এর মতো বিষয়গুলি ব্যবহার করে দেখুন:

make NOPORTDOCS=yes NOPORTEXAMPLES=yes all-depends-list

make WITHOUT_X11=yes all-depends-list

নির্ভরতা মুদ্রণ লক্ষ্যমাত্রার সম্পূর্ণ সেট এখানে:

all-depends-list
build-depends-list
run-depends-list
package-depends-list
pretty-print-build-depends-list
pretty-print-run-depends-list

চিয়ার্স, গ্রেগ


হাই গ্রেগ, আপনি কি জানেন যে নির্ভরতা মুদ্রণের লক্ষ্যগুলি কোথায় নথিভুক্ত করা হয়? একটি নির্দিষ্ট ম্যান ফাইল আছে? আমার কোন প্রশ্ন নেই ... এটি কেবল গভীর বোঝার জন্য। ধন্যবাদ।

কিছু মনে করো না. তারা নথিভুক্ত করা হয় man ports

1

আপনাকে পুনরাবৃত্তভাবে সমস্ত উপনির্ভরতাও পেতে হবে। বন্দর-এমজিএমটি বিভাগে এর জন্য সম্ভবত কিছু সরঞ্জাম রয়েছে ...

আমি পোর্ট ম্যানেজমেন্টের জন্য পোর্টমাস্টার (8) ব্যবহার করি । এটি সর্বদা পোর্ট সংকলন ও ইনস্টল করার আগে (উপ) নির্ভরতাগুলি সংগ্রহ করে:

~> portmaster --show-work devel/apache-ant
===>>> Port directory: /usr/ports/devel/apache-ant
===>>> Starting check for all dependencies
===>>> Gathering dependency list for devel/apache-ant from ports

===>>> Installed converters/libiconv
===>>> Installed devel/gettext
===>>> NOT INSTALLED            devel/gmake
===>>> Installed devel/libcheck
...

1

বেশিরভাগ নির্ভরতার তালিকাগুলি এক নজরে পার্স করা শক্ত। আমি এই মোড়ক স্ক্রিপ্টটি helmut@charlieroot.de দ্বারা ব্যবহার করতে পছন্দ করি কারণ এটি উপরের এবং নীচের দিকের উভয়ই নির্ভরতা সহ একটি সুন্দর, নেস্টেড তালিকা প্রদর্শন করে:

$ pkg_depends.pl ruby18-bdb-0.6.5_1
Package ruby18-bdb-0.6.5_1 depends on:
    db41-4.1.25_4
    ruby-1.8.7.248_5,1
Package ruby18-bdb-0.6.5_1 is required by:
    portupgrade-2.4.7,2

যুক্তি ছাড়াই এটি চালানো একটি দীর্ঘ তালিকা তৈরি করতে পারে, কারণ এটি সমস্ত ফাইলের জন্য সমস্ত নির্ভরশীলতা চেইন দেখায়, তাই আমি সাধারণত এটি কেবল একটি বিশেষ বন্দরের জন্য চালানোর পরামর্শ দিই।


1

যার উপর নির্ভর করে পোর্টগুলি তালিকাভুক্ত করতে:

pkg_info -rx "port-name"

যেগুলি বন্দর প্রয়োজন তাদের তালিকা করতে:

pkg_info -Rx "port-name"

- এই ওয়েবসাইট থেকে উত্তর: http://daemon-notes.com/tips (রস ধন্যবাদ)


উত্তরের জন্য ধন্যবাদ. যাইহোক, আমার এটি উল্লেখ করতে হবে যে pkg_*সরঞ্জামগুলি অবহেলা করা
স্টেফান লাসিউইস্কি

কমান্ড কাজ করে; pkgng এ আপনাকে কেবল আন্ডারস্কোরটি সরাতে হবে:pkg info -Rx 'port-name'
এরিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.