ชุดไฟล์ CMake เพื่อดาวน์โหลดและสร้าง ALGLIB เป็นโปรเจ็กต์แบบสแตนด์อโลน จาก ALGLIB นี่คือคำอธิบายของห้องสมุด:
ALGLIB คือไลบรารีการวิเคราะห์เชิงตัวเลขและการประมวลผลข้อมูลข้ามแพลตฟอร์ม รองรับภาษาการเขียนโปรแกรมหลายภาษา (C++, C#, Delphi) และระบบปฏิบัติการหลายระบบ (Windows และ POSIX รวมถึง Linux) คุณสมบัติ ALGLIB ประกอบด้วย:
- การวิเคราะห์ข้อมูล (การจำแนกประเภท/การถดถอย สถิติ)
- การเพิ่มประสิทธิภาพและตัวแก้ปัญหาแบบไม่เชิงเส้น
- การประมาณค่าและการปรับกำลังสองน้อยที่สุดเชิงเส้น/ไม่เชิงเส้น
- พีชคณิตเชิงเส้น (อัลกอริธึมโดยตรง, EVD/SVD), ตัวแก้เชิงเส้นตรงและแบบวนซ้ำ
- Fast Fourier Transform และอัลกอริธึมอื่น ๆ อีกมากมาย
พร้อมสิ่งอำนวยความสะดวก make
:
$ git clone https://github.com/S-Dafarra/alglib-cmake.git
$ cd alglib-cmake
$ mkdir build && cd build
$ cmake ..
$ make
$ [sudo] make install
ด้วยเครื่องมือสร้าง IDE เช่น Visual Studio หรือ Xcode
$ git clone https://github.com/S-Dafarra/alglib-cmake.git
$ cd alglib-cmake
$ mkdir build && cd build
$ cmake ..
$ cmake --build . --target ALL_BUILD --config Release
$ cmake --build . --target INSTALL --config Release
หากคุณต้องการความช่วยเหลือเพิ่มเติมเกี่ยวกับวิธีสร้างโปรเจ็กต์ที่ใช้ CMake โปรดตรวจสอบส่วนขั้นตอนแรกของ CGold
เมื่อติดตั้งไลบรารีแล้ว คุณสามารถลิงก์ไลบรารีได้โดยใช้ CMake
โดยไม่ต้องใช้ความพยายามเพียงเล็กน้อยเหมือนกับการเขียนโค้ดบรรทัดต่อไปนี้ใน CMakeLists.txt
ของโปรเจ็กต์ของคุณ :
...
find_package (ALGLIB REQUIRED )
...
target_link_libraries (<target> PRIVATE ALGLIB)
...
โปรดทราบว่าเว้นแต่ว่าคุณไม่ได้ใช้ค่าเริ่มต้นของ CMAKE_INSTALL_PREFIX
<prefix>
ที่คุณติดตั้ง ALGLIB จะต้องต่อท้ายตัวแปรสภาพแวดล้อม CMAKE_PREFIX_PATH
เพื่อให้แน่ใจว่า find_package
สามารถค้นหาการติดตั้ง ALGLIB ของคุณได้ หรือคุณสามารถระบุตัวแปรสภาพแวดล้อมได้
export ALGLIB_DIR=path/where/alglib-cmake/is/installed
ดูเอกสารอ้างอิงของ CMake หากคุณต้องการข้อมูลเพิ่มเติมเกี่ยวกับคำสั่ง find_package
หรือ target_link_libraries
CMake
alglib-cmake ได้รับอนุญาตภายใต้ GNU Lesser General Public License v3.0 :
https://www.gnu.org/licenses/lgpl-3.0.html
หรือ GNU Lesser General Public License v2.1 :
https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
ตามตัวเลือกของคุณ