ไลบรารี C แบบพกพาขนาดเล็กเพื่อจัดการไฟล์รายการคุณสมบัติของ Apple ในรูปแบบ Binary, XML, JSON หรือ OpenStep
โครงการจัดทำอินเทอร์เฟซเพื่ออ่านและเขียนไฟล์ PLIST ในรูปแบบ Binary, XML, JSON หรือ OpenStep พร้อมกับยูทิลิตี้บรรทัดคำสั่งชื่อ plistutil
คุณสมบัติที่สำคัญบางอย่างคือ:
plistutil สำหรับบรรทัดคำสั่งคุณต้องมีคอมไพเลอร์ที่ใช้งานได้ (GCC/Clang) และสภาพแวดล้อมการพัฒนาที่มีอยู่ โครงการนี้ใช้ autotools สำหรับกระบวนการสร้างช่วยให้มีขั้นตอนการสร้างทั่วไปในแพลตฟอร์มที่แตกต่างกัน มีเพียงข้อกำหนดเบื้องต้นที่แตกต่างกันและอธิบายไว้ในส่วนนี้
ติดตั้งการพึ่งพาและเครื่องมือสร้างที่จำเป็นทั้งหมด:
sudo apt-get install
build-essential
checkinstall
git
autoconf
automake
libtool-binหากคุณต้องการเลือกการใช้เอกสารหรือการเชื่อมโยง Python โดยเลือก:
sudo apt-get install
doxygen
cython3 ตรวจสอบให้แน่ใจว่ามีการติดตั้งเครื่องมือบรรทัดคำสั่ง xcode จากนั้นใช้ MacPorts หรือ Homebrew เพื่อติดตั้ง automake , autoconf และ libtool
ใช้ MacPorts:
sudo port install libtool autoconf automakeใช้ homebrew:
brew install libtool autoconf automake ในกรณีที่คุณต้องการสร้างเอกสารให้ติดตั้ง doxygen โดยใช้คำสั่งการติดตั้งที่เกี่ยวข้องจากด้านบน
หากคุณต้องการสร้างการผูก Python คุณต้องติดตั้ง Cython:
pip3 install cythonคุณอาจต้องตั้งค่าตัวแปรสภาพแวดล้อมสองสามตัวหากการสร้างการผูกพง ๆ ล้มเหลว ตัวอย่างเช่นการสร้างอัตโนมัติผ่านการกระทำของ GitHub กำลังตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้:
PYTHON3_BIN= ` xcrun -f python3 `
export PYTHON= $PYTHON3_BIN
PYTHON_VER= ` $PYTHON3_BIN -c " import distutils.sysconfig; print(distutils.sysconfig.get_config_var('VERSION')) " `
PYTHON_EXEC_PREFIX= ` $PYTHON3_BIN -c " import distutils.sysconfig; print(distutils.sysconfig.get_config_var('exec_prefix')) " `
PYTHON_LIBS_PATH= $PYTHON_EXEC_PREFIX /lib
PYTHON_FRAMEWORK_PATH= $PYTHON_EXEC_PREFIX /Python3
export PYTHON_LIBS= " -L $PYTHON_LIBS_PATH -lpython $PYTHON_VER "
export PYTHON_EXTRA_LDFLAGS= " -Wl,-stack_size,1000000 -framework CoreFoundation $PYTHON_FRAMEWORK_PATH " การใช้ MSYS2 เป็นวิธีการอย่างเป็นทางการในการรวบรวมโครงการนี้บน Windows ดาวน์โหลดตัวติดตั้ง MSYS2 และทำตามขั้นตอนการติดตั้ง
ขอแนะนำให้ใช้เชลล์ 64 บิต MSYS2 MINGW เรียกใช้และตรวจสอบให้แน่ใจว่ามีการติดตั้งการพึ่งพาที่ต้องการ:
pacman -S base-devel
git
mingw-w64-x86_64-gcc
make
libtool
autoconf
automake-wrapperหมายเหตุ: คุณสามารถใช้เชลล์ที่แตกต่างกันและคอมไพเลอร์ที่แตกต่างกันตามความต้องการของคุณ ปรับคำสั่งข้างต้นตาม
หากคุณต้องการเลือกสร้างการผูก Python คุณต้องติดตั้ง cython และตรวจสอบให้แน่ใจว่าคุณมีสภาพแวดล้อม Python ที่ใช้งานได้
pacman -S cython คุณสามารถสร้างซอร์สโค้ดจากการชำระเงิน GIT หรือจาก .tar.bz2 รีลีส Tarball จากรุ่น ก่อนที่เราจะสามารถสร้างได้แผนผังต้นทางจะต้องมีการกำหนดค่าสำหรับการสร้าง ขั้นตอนขึ้นอยู่กับที่คุณได้รับแหล่งที่มา
จาก Git
หากคุณยังไม่ได้ดำเนินการโคลนที่เก็บข้อมูลจริงและเปลี่ยนเป็นไดเรกทอรี
git clone https://github.com/libimobiledevice/libplist.git
cd libplistกำหนดค่าแผนผังต้นทางสำหรับการสร้าง:
./autogen.shจากการปล่อย Tarball (.tar.bz2)
เมื่อใช้ Tarball อย่างเป็นทางการ ( libplist-xyztar.bz2 ) ขั้นตอนจะแตกต่างกันเล็กน้อย
สกัด tarball:
tar xjf libplist-x.y.z.tar.bz2
cd libplist-x.y.zกำหนดค่าแผนผังต้นทางสำหรับการสร้าง:
./configure ทั้ง ./configure และ ./autogen.sh (ซึ่งสร้างและ configure การโทร) ยอมรับตัวเลือกสองสามตัวตัวอย่างเช่น --enable-debug เพื่ออนุญาตให้พิมพ์ข้อความการดีบักในผลิตภัณฑ์ขั้นสุดท้ายหรือ --without-cython การข้ามการสร้างการเชื่อมโยง Python คุณสามารถผ่านพวกเขาเช่นนี้ได้:
./autogen.sh --prefix=/usr/local --enable-debug --without-cythonหรือ
./configure --prefix=/usr/local --enable-debugเมื่อคำสั่งประสบความสำเร็จเอาต์พุตสองสามบรรทัดสุดท้ายจะมีลักษณะเช่นนี้:
[...]
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
Configuration for libplist 2.3.1:
-------------------------------------------
Install prefix ..........: /usr/local
Debug code ..............: yes
Python bindings .........: yes
Now type 'make' to build libplist 2.3.1,
and then 'make install' for installation.
หากคุณทำตามขั้นตอนทั้งหมดได้สำเร็จและ autogen.sh หรือ configure ไม่ได้พิมพ์ข้อผิดพลาดใด ๆ คุณพร้อมที่จะสร้างโครงการ สิ่งนี้ทำได้ง่ายๆ
makeหากไม่มีการปล่อยข้อผิดพลาดคุณพร้อมสำหรับการติดตั้ง ขึ้นอยู่กับว่าผู้ใช้ปัจจุบันมีสิทธิ์เขียนลงในไดเรกทอรีปลายทางหรือไม่คุณอาจเรียกใช้
make installหรือ
sudo make install หากคุณอยู่ใน Linux คุณต้องการเรียกใช้ sudo ldconfig หลังจากการติดตั้งเพื่อให้แน่ใจว่ามีการติดตั้งไลบรารี
การใช้งานง่าย libplist มี API ตรงไปข้างหน้า มันถูกใช้ใน libimobiledevice และโครงการที่เกี่ยวข้อง
นอกจากนี้ยังมาพร้อมกับสาย plistutil ของสายคำสั่งที่ใช้งานง่ายจริงๆ:
plistutil -i foobar.plist -o output.plist สิ่งนี้จะแปลงไฟล์ foobar.plist เป็นรูปแบบตรงข้ามเช่นไบนารีเป็น XML หรือในทางกลับกันและส่งออกไปยังไฟล์ output.plist
ในการแปลงเป็นรูปแบบเฉพาะ - และเพื่อแปลงจากรูปแบบ JSON หรือ OpenStep - ใช้สวิตช์บรรทัดคำสั่ง -f :
plistutil -i input.plist -f json สิ่งนี้จะแปลง input.plist โดยไม่คำนึงถึงรูปแบบอินพุตเป็น JSON โค้ดตรวจจับรูปแบบอินพุตอัตโนมัติและแยกวิเคราะห์ตามนั้น
โปรดปรึกษาข้อมูลการใช้งานหรือหน้าคู่มือสำหรับเอกสารฉบับเต็มของตัวเลือกบรรทัดคำสั่งที่มีอยู่:
plistutil --helpหรือ
man plistutilเรายินดีต้อนรับการมีส่วนร่วมจากทุกคนและขอบคุณสำหรับทุกคำขอดึง!
หากคุณต้องการมีส่วนร่วมโปรดแยกสาขา master เปลี่ยนกระทำและส่งคำขอดึงเพื่อตรวจสอบ เมื่อได้รับการอนุมัติแล้วมันสามารถรวมเข้ากับฐานรหัสหลัก
หากคุณวางแผนที่จะมีส่วนร่วมในการเปลี่ยนแปลงที่ใหญ่ขึ้นหรือการปรับโครงสร้างที่สำคัญโปรดสร้างตั๋วก่อนเพื่อหารือเกี่ยวกับแนวคิดล่วงหน้าเพื่อให้แน่ใจว่าทุกคนใช้ความพยายามน้อยลง
โปรดตรวจสอบให้แน่ใจว่าการบริจาคของคุณเป็นไปตาม:
โครงการนี้ได้รับใบอนุญาตภายใต้ใบอนุญาตสาธารณะ GNU Lesser ทั่วไป v2.1 รวมอยู่ในที่เก็บในไฟล์ COPYING
Apple, iPhone, iPad, iPod, iPod Touch, Apple TV, Apple Watch, Mac, iOS, iPados, TVOS, WatchOS และ MacOS เป็นเครื่องหมายการค้าของ Apple Inc.
โครงการนี้เป็นห้องสมุดซอฟต์แวร์อิสระและยังไม่ได้รับอนุญาตสนับสนุนหรือได้รับการอนุมัติจาก Apple Inc.
readme อัปเดตเมื่อ: 2024-10-22