กลับไปหน้าบทความ

อ่าน 3 นาที

สคอนส์

SCons เป็น เครื่องมือพัฒนาซอฟต์แวร์ ที่วิเคราะห์ ความสัมพันธ์ ของซอร์สโค้ด และ ข้อกำหนดการปรับใช้ กับระบบปฏิบัติการ จากคำอธิบายโครงการซอฟต์แวร์...

สคอนส์

สคอนส์
ผู้เขียนต้นฉบับสตีเวน ไนท์
ปล่อย13 ธันวาคม พ.ศ. 2544 [ 1 ] ( 13 ธันวาคม 2544 )
เวอร์ชันเสถียร
4.10.1 [ 2 ] / 16 พฤศจิกายน 2025 ( 16 พฤศจิกายน 2025 )
เขียนเป็นไพธอน
ระบบปฏิบัติการข้ามแพลตฟอร์ม
พิมพ์เครื่องมือพัฒนาซอฟต์แวร์
ใบอนุญาตใบอนุญาต MIT
เว็บไซต์scons.org
ที่เก็บข้อมูลgithub.com/SCons/scons

SConsเป็นเครื่องมือพัฒนาซอฟต์แวร์ที่วิเคราะห์ ความสัมพันธ์ ของซอร์สโค้ดและ ข้อกำหนดการปรับใช้ กับระบบปฏิบัติการ จากคำอธิบายโครงการซอฟต์แวร์ และสร้างไฟล์ปฏิบัติการไบนารีขั้นสุดท้ายสำหรับการติดตั้งบนแพลตฟอร์มระบบปฏิบัติการเป้าหมาย ฟังก์ชันการทำงานของมันคล้ายกับ ระบบสร้างโปรแกรม GNUที่ ได้รับความนิยมมากกว่า

เครื่องมือนี้สร้าง สคริปต์ Pythonสำหรับการกำหนดค่าโปรเจ็กต์และตรรกะการสร้าง

ประวัติศาสตร์

โปรแกรมสร้างซอฟต์แวร์Cons ซึ่งเขียนด้วยภาษา Perlถูกสร้างขึ้นโดย Bob Sidebotham ในปี 1999 [ 3 ]โดยทำหน้าที่เป็นพื้นฐานสำหรับ เครื่องมือสร้าง ScConsซึ่งเป็นการออกแบบที่ชนะการแข่งขัน SC Build ของ โครงการ Software Carpentryในเดือนสิงหาคม 2000 [ 4 ] ScCons เป็นรากฐานของ SCons

SCons เป็นแรงบันดาลใจให้เกิดการสร้างWafซึ่งเดิมรู้จักกันในชื่อSCons/BKsysซึ่งเกิดขึ้นใน ชุมชน KDE ระยะหนึ่งเคยมีแผนที่จะใช้มันเป็นเครื่องมือสร้างสำหรับ KDE 4 และเวอร์ชันต่อๆ ไป แต่ความพยายามนั้นถูกยกเลิกไปและหันมา ใช้CMakeแทน[ 5 ]

โครงการ ที่โดดเด่น ที่ใช้ SCons (หรือเคยใช้) ได้แก่: The Battle for Wesnoth [ 6 ] Battlefield 1942 , Doom 3 [ 7 ] gem5 [ 8 ] gpsd [ 9 ] GtkRadiant [ 10 ] Madagascar [ 11 ] Nullsoft Scriptable Install System [ 12 ] OpenNebula [ 13 ] VMware , Wolfenstein : Enemy Territory [ 14 ] XORPและ MCA2 [ 15 ] openpilot [ 16 ]และGodot [ 17 ]

.csig คือรูปแบบไฟล์ลายเซ็นเนื้อหาของ SCons

คุณสมบัติ

คุณสมบัติหลักประกอบด้วย:

  • ไฟล์การกำหนดค่าเขียนด้วยภาษา Python; การสร้างที่เขียนโดยผู้ใช้สามารถใช้ประโยชน์จากภาษาโปรแกรมอเนกประสงค์ที่ใช้งานได้บนหลายแพลตฟอร์ม
  • การวิเคราะห์ความสัมพันธ์ ของภาษา C , C++และFortran
  • การวิเคราะห์การพึ่งพาของไฟล์สามารถขยายได้โดยใช้สแกนเนอร์ที่ผู้ใช้กำหนดเองสำหรับภาษาหรือประเภทไฟล์อื่นๆ ซึ่งแตกต่างจาก การวิเคราะห์การพึ่งพา ของ GNU Compiler Collection (GCC) ตรงที่ SCons ใช้ การสแกนด้วย นิพจน์ปกติสำหรับไฟล์ต้นฉบับที่รวมอยู่
  • รองรับภาษาโปรแกรม C, C++, D , Java , Fortran , Objective-C , Yacc , Lex , QtและSWIGรวมถึงเอกสารTeXและLaTeX ในตัว
  • รองรับภาษาอื่นๆ ผ่านเครื่องมือสร้างแบบกำหนดเอง
  • สร้างจากแหล่งเก็บซอร์สโค้ดส่วนกลางและเป้าหมายที่สร้างไว้ล่วงหน้า
  • ความสามารถในการใช้งานVisual Studioรวมถึงการสร้างไฟล์ .dsp, .dsw, .sln และ .vcproj
  • การตรวจจับการเปลี่ยนแปลงเนื้อหาไฟล์โดยใช้ ลายเซ็น MD5 ; สามารถเลือกใช้งานการประทับเวลาแบบดั้งเดิมได้ (เป็นตัวเลือกเสริม)
  • ความสามารถในการสร้างแบบขนาน โดยรักษาจำนวนงานที่กำหนดไว้ให้ทำงานพร้อมกันโดยไม่คำนึงถึงลำดับชั้นของไดเร็กทอรี
  • รองรับการค้นหาไฟล์ #include, ไลบรารี, ฟังก์ชัน และtypedefs ในลักษณะเดียวกับ Autoconf
  • ภาพรวมของความสัมพันธ์ระหว่างส่วนประกอบต่างๆ ทำให้ไม่จำเป็นต้องสร้างบิลด์หลายรอบหรือจัดลำดับเป้าหมายใหม่
  • ความสามารถในการแชร์ไฟล์ที่สร้างเสร็จแล้วในแคชเพื่อเร่งความเร็วในการสร้างหลายๆ ไฟล์พร้อมกัน - คล้ายกับccacheแต่ใช้ได้กับไฟล์เป้าหมายทุกประเภท ไม่ใช่แค่การคอมไพล์ C/C++ เท่านั้น
  • ออกแบบมาตั้งแต่เริ่มต้นเพื่อรองรับการใช้งานข้ามแพลตฟอร์ม เป็นที่ทราบกันดีว่าใช้งานได้บนระบบPOSIX (รวมถึง Linux , AIXและOS/2 , *BSD Unices , HP-UX , SGI IRIX , Solaris , illumos ), Windows NTและOS X

ตัวอย่าง

ต่อไปนี้เป็นไฟล์ SConstruct ที่สร้าง โปรแกรม C "hello world"โดยใช้คอมไพเลอร์เริ่มต้นของแพลตฟอร์ม:

โปรแกรม( "hello-world.c" )

ต่อไปนี้เป็นไฟล์ SConstruct สำหรับโปรเจ็กต์ที่ประกอบด้วยไฟล์ต้นฉบับสองไฟล์และระบุตัวเลือกเครื่องมือสร้าง:

env = Environment ( ) env.Append ( CPPFLAGS = [ " - Wall" , " -g" ]) env.Program ( "hello" , [ "hello.c" , "main.c" ])

ดูเพิ่มเติม

  • เว็บไซต์อย่างเป็นทางการ
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=SCons&oldid=1336385633 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ สคอนส์

SCons เป็น เครื่องมือพัฒนาซอฟต์แวร์ ที่วิเคราะห์ ความสัมพันธ์ ของซอร์สโค้ด และ ข้อกำหนดการปรับใช้ กับระบบปฏิบัติการ จากคำอธิบายโครงการซอฟต์แวร์...

ประวัติศาสตร์

โปรแกรมสร้างซอฟต์แวร์ Cons ซึ่งเขียนด้วยภาษา Perl ถูกสร้างขึ้นโดย Bob Sidebotham ในปี 1999 [ 3 ] โดยทำหน้าที่เป็นพื้นฐานสำหรับ เครื่องมือสร้าง ScCons ซึ่งเป็นการออกแบบที่ชนะการแข่งขัน SC Build ของ โครงการ Software Carpentry ในเดือนสิงหาคม 2000 [ 4 ] ScCons...

ตัวอย่าง

ต่อไปนี้เป็นไฟล์ SConstruct ที่สร้าง โปรแกรม C "hello world" โดยใช้คอมไพเลอร์เริ่มต้นของแพลตฟอร์ม:

ดูเพิ่มเติม

การก่อสร้าง qmake – เฟรมเวิร์กเชิงวัตถุสำหรับการพัฒนาซอฟต์แวร์ หน้าเว็บที่แสดงคำอธิบายสั้น ๆ ของเป้าหมายการเปลี่ยนเส้นทาง Qbs (เครื่องมือสร้าง) Premake – เครื่องมือสร้างแอปพลิเคชันแบบข้ามแพลตฟอร์ม สำหรับกำหนดค่าการสร้างแอปพลิเคชันเฉพาะแพลตฟอร์ม...