นี่คือคำสั่ง debmake ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
debmake - โปรแกรมสร้างแพ็คเกจต้นทาง Debian
เรื่องย่อ
เด็บเมค [-h] [-c | -k] [-n | -a รุ่นแพ็คเกจ.orig.tar.gz | -d | -t ] [-p แพ็คเกจ] [-u
รุ่น] [-r การแก้ไข] [-z นามสกุล] [-b "แพ็คเกจไบนารี, ...]" [-e [ป้องกันอีเมล]] [-f
"FirstName นามสกุล"] [-i "เครื่องมือสร้าง"| -j] [-l ใบอนุญาต_ไฟล์] [-m] [-o ไฟล์] [-q] [-s]
[-v] [-w "เพิ่มเข้าไป, ..."] [-x [01234]] [-y] [-P] [-T]
DESCRIPTION
เด็บเมค ช่วยในการสร้างแพ็คเกจ Debian จากต้นทางต้นน้ำ ปกติก็เสร็จแล้ว
ดังต่อไปนี้:
·ดาวน์โหลด tarball ต้นน้ำเป็น รุ่นแพ็คเกจ.tar.gz ไฟล์
· ไม่จำเป็นต้องสร้างไฟล์จำนวนมากภายใต้ รุ่นแพ็คเกจ/ ไดเรกทอรี
· debmake ถูกเรียกใช้ใน รุ่นแพ็คเกจ/ ไดเร็กทอรีอาจไม่มีอาร์กิวเมนต์ใดๆ
·ไฟล์ใน รุ่นแพ็คเกจ/เดเบียน/ ไดเร็กทอรีจะถูกปรับด้วยตนเอง
· dpkg-buildpackage (โดยปกติมาจากกระดาษห่อ สร้าง or สร้าง) ถูกเรียกใช้ใน
รุ่นแพ็คเกจ/ ไดเร็กทอรีเพื่อสร้างแพ็คเกจเดเบียน
ตรวจสอบให้แน่ใจว่าได้ปกป้องข้อโต้แย้งของ -b, -f, -lและ -w ตัวเลือกจากเปลือก
แทรกแซงโดยอ้างอย่างถูกต้อง
ไม่จำเป็น ข้อโต้แย้ง:
-h, --ช่วยด้วย
แสดงข้อความช่วยเหลือนี้และออก
-c, --ลิขสิทธิ์
สแกนแหล่งที่มาสำหรับข้อความลิขสิทธิ์ + ใบอนุญาตและออก
· -c: สไตล์เอาต์พุตที่เรียบง่าย
· -ซีซี: รูปแบบเอาต์พุตปกติ (คล้ายกับ เดเบียน / ลิขสิทธิ์ ไฟล์)
· -ซีซีซี: ดีบักเอาต์พุตสไตล์
-k, --คลัช
เปรียบเทียบ เดเบียน / ลิขสิทธิ์ ไฟล์ที่มีแหล่งที่มาและออก
เทศกาล เดเบียน / ลิขสิทธิ์ ต้องจัดไฟล์ให้แสดงรายการรูปแบบไฟล์ทั่วไปก่อน
ข้อยกเว้นเฉพาะ
· -k: รูปแบบเอาต์พุตพื้นฐาน
· -kk: สไตล์เอาต์พุตแบบละเอียด
-n, --พื้นเมือง
สร้างแพ็คเกจซอร์ส Debian ดั้งเดิมโดยไม่ต้อง .orig.tar.gz. สิ่งนี้ทำให้ “3.0
(พื้นเมือง)” แพ็คเกจรูปแบบ
หากคุณกำลังคิดที่จะจัดแพ็คเกจต้นไม้ต้นทางเฉพาะของ Debian ด้วย เดเบียน/* ในนั้นเข้าไป
แพ็คเกจ Debian ดั้งเดิม โปรดคิดอย่างอื่น คุณสามารถใช้ได้ "เด็บเมค -d -i สร้าง"
หรือ "เด็บเมค -t -i สร้าง” เพื่อทำให้ “3.0 (ผ้าห่ม)” จัดรูปแบบแพ็คเกจ Debian ที่ไม่ใช่เจ้าของภาษา
ข้อแตกต่างเพียงอย่างเดียวคือ เดเบียน/บันทึกการเปลี่ยนแปลง ไฟล์ต้องใช้เวอร์ชันที่ไม่ใช่เจ้าของภาษา
โครงการ: รุ่นแก้ไข. แพ็คเกจที่ไม่ใช่เจ้าของภาษาเป็นมิตรกับดาวน์สตรีมมากขึ้น
การแจกแจง
-a รุ่นแพ็คเกจ.tar.gz, --คลังเก็บเอกสารสำคัญ รุ่นแพ็คเกจ.tar.gz
ใช้ tarball ต้นน้ำโดยตรง (-p, -u, -z: ถูกแทนที่)
tarball ต้นน้ำอาจระบุเป็น package_version.orig.tar.gz และ tar.gz เป็นเวลา
ทุกกรณีอาจจะ tar.bz2,หรือ tar.xz.
หากชื่อ tarball ต้นน้ำที่ระบุมีตัวพิมพ์ใหญ่ แสดงว่าแพ็คเกจ Debian
ชื่อถูกสร้างขึ้นโดยการแปลงเป็นอักษรตัวพิมพ์เล็ก
หากอาร์กิวเมนต์ที่ระบุคือ URL (http://, https:// หรือ ftp://) ไปยังอัปสตรีม
tarball tarball ต้นน้ำถูกดาวน์โหลดจาก URL โดยใช้ wget or โค้ง.
-d, --ดิสท
เรียกใช้ "make dist" ที่เทียบเท่าก่อนเพื่อสร้าง tarball ต้นน้ำและใช้งาน
"เด็บเมค -d” ออกแบบมาเพื่อทำงานใน บรรจุุภัณฑ์/ ไดเร็กทอรีที่โฮสต์ VCS . ต้นน้ำ
พร้อมระบบบิลด์ที่รองรับ”ทำ อ.” เทียบเท่า (automake/autoconf, Python
distutils, ... )
-t, --ทาร์
วิ่ง "น้ำมันดิน” เพื่อสร้าง tarball ต้นน้ำและใช้งาน
"เด็บเมค -t” ออกแบบมาเพื่อทำงานใน บรรจุุภัณฑ์/ ไดเร็กทอรีที่โฮสต์ VCS ต้นน้ำ
เว้นแต่คุณจะจัดเตรียมเวอร์ชันอัปสตรีมด้วยไฟล์ -u ตัวเลือกหรือด้วย
เดเบียน/บันทึกการเปลี่ยนแปลง ไฟล์เวอร์ชันอัปสตรีมสแน็ปช็อตจะถูกสร้างขึ้นในไฟล์ 0~%y%m%d%H%M
รูปแบบ เช่น 0 ~ 1403012359ตั้งแต่วันที่และเวลา UTC tarball ที่สร้างขึ้นไม่รวม
เดเบียน/ ไดเร็กทอรีที่พบใน VCS ต้นน้ำ (นอกจากนี้ยังไม่รวม VCS . ทั่วไป
ไดเรกทอรี: .git/ .hg/ .svn/ .ซีวีเอส/)
-p แพ็คเกจ, --บรรจุุภัณฑ์ แพ็คเกจ
ตั้งชื่อแพ็คเกจเดเบียน
-u รุ่น, --เวอร์ชันต้นน้ำ รุ่น
ตั้งค่าเวอร์ชันแพ็คเกจต้นน้ำ
-r การแก้ไข, --การแก้ไข การแก้ไข
ตั้งค่าการแก้ไขแพ็คเกจ Debian
-z นามสกุล, --targz นามสกุล
กำหนดประเภท tarball นามสกุล=(tar.gz|tar.bz2|tar.xz) (นามแฝง: z, b, x)
-b "แพ็คเกจไบนารี[:ประเภท],...", --binaryspec "แพ็คเกจไบนารี[:ประเภท],..."
ตั้งค่าข้อกำหนดแพ็คเกจไบนารีโดยรายการคั่นด้วยเครื่องหมายจุลภาคของ แพ็คเกจไบนารี: ประเภท คู่
เช่น แบบเต็ม “foo:bin,foo-doc:doc,libfoo1:lib,libfoo1-dbg:dbg,libfoo-dev:dev" หรือ
ในรูปแบบย่อ “,-doc,libfoo1,libfoo1-dbg, libfoo-dev"
ที่นี่ แพ็คเกจไบนารี เป็นชื่อแพ็คเกจไบนารี และไม่บังคับ ชนิด ได้รับการคัดเลือกจาก
ดังต่อไปนี้ ชนิด ค่า:
· ถัง: แพ็คเกจรหัสไบนารี ELF ที่คอมไพล์แล้ว C/C++ (ใด ๆ ต่างประเทศ) (ค่าเริ่มต้น นามแฝง: "",
กล่าวคือ null-สตริง)
· ข้อมูล: แพ็คเกจข้อมูล (แบบอักษร กราฟิก ...) (ทั้งหมด ต่างประเทศ) (นามแฝง: da)
· ฐานข้อมูล: แพ็คเกจสัญลักษณ์ดีบัก (ใด ๆ เหมือนกัน) (นามแฝง: db)
· dev: แพ็คเกจการพัฒนาห้องสมุด (ใด ๆ เหมือนกัน) (นามแฝง: de)
· doc: แพ็คเกจเอกสาร (ทั้งหมด ต่างประเทศ) (นามแฝง: do)
· lib: แพ็คเกจไลบรารี (ใด ๆ เหมือนกัน) (นามแฝง: l)
· Perl: แพ็คเกจสคริปต์ Perl (ทั้งหมด ต่างประเทศ) (นามแฝง: pl)
· หลาม: แพ็คเกจสคริปต์ Python (ทั้งหมด ต่างประเทศ) (นามแฝง: py)
· python3: แพ็คเกจสคริปต์ Python3 (ทั้งหมด ต่างประเทศ) (นามแฝง: py3)
· ทับทิม: แพ็คเกจสคริปต์ Ruby (ทั้งหมด ต่างประเทศ) (นามแฝง: rb)
· ต้นฉบับ: แพ็คเกจเชลล์สคริปต์ (ทั้งหมด ต่างประเทศ) (นามแฝง: sh)
ค่าคู่ในวงเล็บ เช่น (ใดๆ ต่างประเทศ) คือ สถาปัตยกรรม และ
มัลติอาร์ค ค่าบทที่กำหนดไว้ใน เดเบียน / ควบคุม ไฟล์
ในหลาย ๆ กรณี เด็บเมค คำสั่งทำให้คาดเดาได้ดีสำหรับ ชนิด รถในตำนานจากเกม แพ็คเกจไบนารี. ถ้า
ชนิด ไม่ชัดเจน ชนิด ถูกตั้งค่าเป็น ถัง. ตัวอย่างเช่น ลิบฟู ชุด ชนิด ไปยัง libและ
แถบแบบอักษร ชุด ชนิด ไปยัง ข้อมูล, ...
หากเนื้อหาทรีต้นทางไม่ตรงกับการตั้งค่าสำหรับ ชนิด, เด็บเมค เตือนคุณ
-e [ป้องกันอีเมล], --อีเมล [ป้องกันอีเมล]
ตั้งค่าที่อยู่อีเมล
ค่าดีฟอลต์นำมาจากค่าของตัวแปรสภาพแวดล้อม $DEBEMAIL.
-f "FirstName นามสกุล", --ชื่อเต็ม "FirstName นามสกุล"
ตั้งชื่อเต็ม
ค่าดีฟอลต์นำมาจากค่าของตัวแปรสภาพแวดล้อม $DEBFULLNAME.
-i "เครื่องมือสร้าง", --เรียกใช้ "เครื่องมือสร้าง"
เรียก "เครื่องมือสร้าง" เมื่อสิ้นสุดการดำเนินการ เครื่องมือสร้าง อาจจะ "dpkg-buildpackage"
"สร้าง","สร้าง","สร้าง --ผู้สร้าง คนเลี้ยงวัว” เป็นต้น..
ค่าเริ่มต้นคือไม่ต้องรันโปรแกรมใดๆ
-j, --ผู้พิพากษา
วิ่ง dpkg-depcheck เพื่อตัดสินการสร้างการพึ่งพาและระบุเส้นทางของไฟล์ ไฟล์บันทึกคือ
ในไดเร็กทอรีหลัก
· แพ็คเกจ.build-dep.log: ล็อกไฟล์สำหรับ dpkg-depcheck.
· แพ็คเกจ.install.log: บันทึกไฟล์บันทึกไฟล์ใน เดเบียน/tmp ไดเรกทอรี
-l "ไฟล์ลิขสิทธิ์,...", --ใบอนุญาต "ไฟล์ลิขสิทธิ์,..."
เพิ่มข้อความใบอนุญาตที่จัดรูปแบบต่อท้าย เดเบียน / ลิขสิทธิ์ ใบอนุญาตการถือไฟล์
ผลการสแกน
ค่าเริ่มต้นคือ add การทำสำเนา และ ใบอนุญาต และ ใบอนุญาต_ไฟล์ ต้องแสดงรายการเท่านั้น
ชื่อไฟล์เพิ่มเติมทั้งหมดคั่นด้วย “,"
-m, --โมโนอาร์ค
บังคับให้แพ็คเกจเป็นแบบ non-multiarch
-o ไฟล์, --ตัวเลือก ไฟล์
อ่านพารามิเตอร์ทางเลือกจาก ไฟล์. (ไม่เหมาะสำหรับใช้ในชีวิตประจำวัน)
เทศกาล ไฟล์ มีที่มาจากรหัส Python3 ที่ส่วนท้ายของ para.py. ตัวอย่างเช่น
คำอธิบายแพ็คเกจสามารถระบุได้โดยไฟล์ต่อไปนี้
para['desc'] = 'คำอธิบายแบบย่อของโปรแกรม'
พารา['desc_long'] = '''\
คำอธิบายแบบยาวของโปรแกรมที่คุณต้องการรวมไว้
.
บรรทัดว่างคือ space + .
คุณไปต่อ ...
'' '
-q, --ค่อนข้าง
ออกก่อนสร้างไฟล์ใน เดเบียน/ ไดเรกทอรี
-s, --ข้อมูลจำเพาะ
ใช้ข้อมูลจำเพาะอัปสตรีม (setup.py สำหรับ Python เป็นต้น) สำหรับคำอธิบายแพ็กเกจ
-v, --รุ่น
แสดงข้อมูลรุ่น
-w "เพิ่มเข้าไป,...", --กับ "เพิ่มเข้าไป,..."
เพิ่มอาร์กิวเมนต์พิเศษให้กับ --กับ ตัวเลือกของ dh(1) คำสั่ง as addon in
เดเบียน / กฎ.
เทศกาล addon ค่าถูกแสดงรายการทั้งหมดคั่นด้วย “,", เช่น, "-w "python2, autoreconf"”.
สำหรับแพ็คเกจที่ใช้ Autotools การตั้งค่า คอนเฟิร์มอัตโนมัติ as addon แรงวิ่ง”คอนเฟิร์มอัตโนมัติ -i
-v -f” สำหรับทุกการสร้างบรรจุภัณฑ์ มิฉะนั้น, autotools-dev as addon ใช้เป็น
ค่าเริ่มต้น.
สำหรับแพ็คเกจที่ใช้ Autotools หากพวกเขาติดตั้งโปรแกรม Python python2 ตามที่แอดออนคือ
ที่จำเป็นสำหรับแพ็คเกจที่มี “compat < 9” เนื่องจากสิ่งนี้ไม่ชัดเจน แต่สำหรับ setup.py
แพ็คเกจตาม python2 as addon ไม่จำเป็นเพราะมันชัดเจนและเป็น
ตั้งค่าโดยอัตโนมัติสำหรับ dh(1) คำสั่งของ เด็บเมค คำสั่งเมื่อจำเป็น
-x n, --พิเศษ n
สร้างไฟล์การกำหนดค่าพิเศษเป็นเทมเพลต
จำนวน n การเปลี่ยนแปลงที่สร้างเทมเพลตการกำหนดค่า
· -x0: ไฟล์คอนฟิกูเรชันขั้นต่ำสุดเปลือย (ค่าเริ่มต้นหากไฟล์เหล่านี้มีอยู่แล้ว)
· -x1: ,, + ไฟล์คอนฟิกูเรชันที่ต้องการ (ค่าเริ่มต้นสำหรับแพ็คเกจใหม่)
· -x2: ,, + ไฟล์คอนฟิกที่น่าสนใจ (แนะนำสำหรับผู้เชี่ยวชาญ multi binary
รับรู้)
· -x3: ,, + ไฟล์เทมเพลตการกำหนดค่าที่ผิดปกติพร้อมส่วนเสริม .อดีต คำต่อท้ายเพื่อบรรเทา
การกำจัดของพวกเขา (แนะนำสำหรับผู้ใช้ใหม่) หากต้องการใช้เป็นไฟล์กำหนดค่า
เปลี่ยนชื่อไฟล์เป็นชื่อโดยไม่ต้อง .อดีต วิภัตติ
· -x4: ,, + ตัวอย่างไฟล์ลิขสิทธิ์
-y, --ใช่
“บังคับใช่” สำหรับข้อความแจ้งทั้งหมด (ไม่มีตัวเลือก: “ถาม [Y/n]”; ตัวเลือกสองเท่า: “บังคับไม่”)
-P, --อวดดี
ตรวจสอบไฟล์ที่สร้างขึ้นโดยอัตโนมัติอย่างอวดรู้
-T, --กวดวิชา
บรรทัดความคิดเห็นของบทช่วยสอนเอาต์พุตในไฟล์เทมเพลต
ตัวอย่าง
สำหรับแหล่งที่มาที่มีพฤติกรรมที่ดี คุณสามารถสร้าง Debian . เดี่ยวที่ติดตั้งได้สำหรับใช้ในพื้นที่
แพ็คเกจไบนารีอย่างง่ายดายด้วยคำสั่งเดียว ทดสอบการติดตั้งของแพ็คเกจดังกล่าวที่สร้างขึ้นในนี้
ทางเสนอทางเลือกที่ดีกว่าแบบดั้งเดิม”ทำ ติดตั้ง” ไปยัง / usr / local ไดเรกทอรี
เนื่องจากแพ็คเกจ Debian สามารถลบออกได้อย่างหมดจดโดย“dpkg -P ... ” สั่งการ. นี่
ตัวอย่างวิธีการสร้างแพ็คเกจทดสอบดังกล่าว (สิ่งเหล่านี้น่าจะใช้ได้ในกรณีส่วนใหญ่ ถ้า
-d ไม่ได้ผล ลอง -t แทน.)
สำหรับแผนผังซอร์สโปรแกรม C ทั่วไปที่บรรจุด้วย autoconf/automake:
· เด็บเมค -d -i สร้าง
สำหรับแผนผังซอร์สของโมดูล python ทั่วไป:
· เด็บเมค -s -d -b":หลาม" -i สร้าง
สำหรับโมดูลหลามทั่วไปใน รุ่นแพ็คเกจ.tar.gz คลังเก็บเอกสารสำคัญ:
· เด็บเมค -s -a รุ่นแพ็คเกจ.tar.gz -b":หลาม" -i สร้าง
สำหรับโมดูล Perl ทั่วไปใน รุ่นแพ็คเกจ.tar.gz คลังเก็บเอกสารสำคัญ:
· เด็บเมค -a รุ่นแพ็คเกจ.tar.gz -b":เพิร์ล" -i สร้าง
ผู้ช่วย แพ็คเกจ
บรรจุภัณฑ์อาจต้องมีการติดตั้งแพ็คเกจตัวช่วยพิเศษเพิ่มเติม
· โปรแกรม Python3 อาจต้องการ dh-หลาม บรรจุภัณฑ์
· ระบบสร้างเครื่องมืออัตโนมัติ (Autoconf + Automake) อาจต้องใช้ autotools-dev or
dh-autoreconf บรรจุภัณฑ์
· โปรแกรมทับทิมอาจต้องใช้ gem2deb บรรจุภัณฑ์
· โปรแกรม Java อาจต้องการ จาวาเฮลเปอร์ บรรจุภัณฑ์
· โปรแกรม Gnome อาจต้องใช้ gobject- วิปัสสนา บรรจุภัณฑ์
· ฯลฯ
ข้อแม้
เด็บเมค มีขึ้นเพื่อให้ไฟล์เทมเพลตสำหรับผู้ดูแลแพ็คเกจทำงาน ความคิดเห็น
บรรทัดที่เริ่มต้นโดย # มีข้อความกวดวิชา คุณต้องลบหรือแก้ไขบรรทัดความคิดเห็นดังกล่าว
ก่อนที่จะอัปโหลดไปยังไฟล์เก็บถาวร Debian
มีข้อ จำกัด บางประการสำหรับอักขระที่อาจใช้เป็นส่วนหนึ่งของ Debian
บรรจุุภัณฑ์. ข้อจำกัดที่โดดเด่นที่สุดคือข้อห้ามของตัวพิมพ์ใหญ่ใน
ชื่อแพ็คเกจ นี่คือบทสรุปในนิพจน์ทั่วไป
· ชื่อแพ็คเกจต้นน้ำ (-p): [-+.a-z0-9]{2,}
· ชื่อแพ็คเกจไบนารี (-b): [-+.a-z0-9]{2,}
· เวอร์ชันต้นน้ำ (-u): [0-9][-+.:~a-z0-9A-Z]*
· การแก้ไขเดเบียน (-r): [0-9][+.~a-z0-9A-Z]*
ดูคำจำกัดความที่แน่นอนในบทที่ 5 - ไฟล์ควบคุมและฟิลด์ของ "Debian
คู่มือนโยบาย”.
แก้ปัญหา
ชุดอักขระในตัวแปรสภาพแวดล้อม $แก้ไขข้อบกพร่อง กำหนดระดับเอาต์พุตการบันทึก
· i: พิมพ์ข้อมูล
· p: แสดงรายการพารามิเตอร์ส่วนกลางทั้งหมด
· d: แสดงรายการพารามิเตอร์ที่แยกวิเคราะห์สำหรับแพ็คเกจไบนารีทั้งหมด
· f: ใส่ชื่อไฟล์สำหรับการสแกนลิขสิทธิ์
· y: ปี/ชื่อแยกบรรทัดลิขสิทธิ์
· s: เครื่องสแกนเส้นสำหรับ format_state
· b: content_state ลูปสแกน: start-loop
· m: content_state scan loop: หลังจาก regex ตรงกัน
· e: content_state ลูปสแกน: end-loop
· c: พิมพ์ข้อความส่วนลิขสิทธิ์
· l: พิมพ์ข้อความมาตราใบอนุญาต
· a: พิมพ์ข้อความส่วนผู้แต่ง/นักแปล
· k: sort key สำหรับ debian/copyright stanza
· n: ผลการสแกนเดเบียน/ลิขสิทธิ์ (“เด็บเมค -k")
ใช้สิ่งนี้เป็น:
$ DEBUG=pdfbmeclak debmake ...
ใช้ debmake ออนไลน์โดยใช้บริการ onworks.net