CLISP-LINK(1) Platform: x86_64-pc-linux-gnu CLISP-LINK(1) نام (NAME) clisp-link - پیوند دادن یک ماژول خارجی جدید به CLISP[1]. خلاصه دستور (SYNOPSIS) clisp-link [create] [module] [file...] clisp-link [add] [source] [destination] [module...] clisp-link [run] [source] [module...] clisp-link [install] [module...] توضیحات (DESCRIPTION) این اسکریپت شل بر روی مجموعه‌های ماژول و مجموعه‌های پیوند (linking sets) در CLISP[1] عمل می‌کند: • دستور create مجموعه‌های ماژول جدید را از فایل‌های منبع ایجاد می‌کند. • دستور add مجموعه‌های ماژول را به یک مجموعه پیوند اضافه می‌کند تا یک مجموعه پیوند جدید ایجاد کند. • دستور run CLISP[1] را همراه با مجموعه‌های ماژولِ اضافه‌شده اجرا می‌کند. • فقط در CLISP[1] ساخته‌شده بدون فلگ پیکربندی --without-dynamic-modules. دستور install مجموعه‌های ماژول جدید را برای استفاده عمومی نصب می‌کند. گزینه‌ها (OPTIONS) create دستور $ clisp-link create module file ... یک مجموعه ماژول در دایرکتوری module ایجاد می‌کند که (از طریق پیوندهای نمادین) به فایل‌های file... اشاره دارد. انتظار می‌رود این فایل‌ها خودشان ماژول باشند. add دستور $ clisp-link add source destination module ... مجموعه پیوند موجود در پوشه source را با ماژول‌های موجود در پوشه‌های module... ترکیب کرده و یک مجموعه پیوند جدید در پوشه تازه ایجادشدهٔ destination تولید می‌کند. run دستور $ clisp-link run source module ... مجموعه پیوند موجود در پوشه source را همراه با ماژول‌های موجود در پوشه‌های module... اجرا می‌کند. مگر آن‌که CLISP[1] با گزینه پیکربندی --without-dynamic-modules ساخته شده باشد، بارگذاری با استفاده از SYS::DYNLOAD-MODULES انجام خواهد شد. در غیر این صورت - که بسیار کندتر است - یک مجموعه پیوند موقت ایجاد شده و پس از آن حذف می‌شود. install فقط در CLISP[1] ساخته‌شده بدون فلگ پیکربندی --without-dynamic-modules. دستور $ clisp-link install module ... ماژول‌های موجود در پوشه‌های module... را در CUSTOM:*LIB-DIRECTORY* یا اگر برای کاربر قابل نوشتن نباشد (مثلاً اگر از نصب سراسری CLISP[1] در سیستم استفاده شود و کاربر دسترسی مدیریتی نداشته باشد)، در CUSTOM:*USER-LIB-DIRECTORY* نصب می‌کند. متغیر CUSTOM:*USER-LIB-DIRECTORY* در ابتدا روی مقدار (MERGE-PATHNAMES[2] ".clisp/" (USER-HOMEDIR-PATHNAME[3])) تنظیم می‌شود (در صورتی که آن پوشه وجود داشته باشد)، و می‌توان آن را در فایل RC بازتنظیم کرد. نکته هرگز CUSTOM:*USER-LIB-DIRECTORY* را به CUSTOM:*LOAD-PATHS* یا زیرمجموعه هیچ عنصری از آن اضافه نکنید. برای بارگذاری ماژول‌های پویا به‌جای LOAD از REQUIRE استفاده کنید. برای کارکرد صحیح این دستور، هر پوشه module باید شامل یک Makefile با یک هدف clisp-module-distrib باشد که با استفاده از LN فایل‌های لازم برای اجرای ماژول را به destdir توزیع کند. این علاوه بر شرط کلی وجود فایل link.sh است. مثال‌ها (EXAMPLES) به بخش 32.2.6، «نمونه» مراجعه کنید. فایل‌ها (FILES) دستور clisp-link به یک پوشه «کیت پیوند» (link kit) حاوی موارد زیر نیاز دارد: • "modules.c" • "clisp.h" دستور clisp-link انتظار دارد این فایل‌ها را در زیرپوشه linkkit/ از پوشه نصب (یعنی CUSTOM:*LIB-DIRECTORY*) پیدا کند، که آن را با اجرای دستور زیر به دست می‌آورد: $ `dirname $0`/clisp -b این مقدار را می‌توان با متغیر محیطی environment variable[4] CLISP_LINKKIT بازنویسی (override) کرد. همچنین ببینید (SEE ALSO) CLISP impnotes clisp(1) نویسندگان (AUTHORS) Bruno Haible نویسنده اصلی و نگهدارنده قدیمی. Michael Stoll نویسنده اصلی. Sam Steingold هم‌نگهدارنده از سال ۱۹۹۸. دیگران (Others) برای مشاهده فهرست سایر مشارکت‌کنندگان و مجوز، فایل COPYRIGHT (در سورس‌های CLISP) را ببینید. حق نشر (COPYRIGHT) Copyright © 1992-2010 Bruno Haible Copyright © 1998-2010 Sam Steingold نکات (NOTES) 1. CLISP http://clisp.org 2. MERGE-PATHNAMES http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/Body/fun_merge- pathnames.html 3. USER-HOMEDIR-PATHNAME http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/Body/fun_user- homedir-pathname.html 4. متغیر محیطی [set $man.base.url.for.relative.links]/basedefs/V1_chap08.html CLISP 2.49.93+ Last modified: 2020-06-22 CLISP-LINK(1)