วิธีการติดตั้งไลบรารี C ++ (เช่น Blitz ++) ในไดเร็กทอรีเฉพาะ (ในที่ไม่ต้องใช้สิทธิ์ sudo) บน Linux [ซ้ำ]
ฉันพยายามดูลิงก์บางส่วนในไซต์นี้ สิ่งที่ใกล้เคียงที่สุดที่ฉันพบคือปัญหานี้แต่ฉันก็ยังไม่สามารถแก้ปัญหาได้
ฉันเป็นคนใหม่สำหรับสิ่งนี้ แต่โดยพื้นฐานแล้วฉันตั้งใจจะติดตั้งไลบรารีBlitz ++สำหรับ C ++ บน Linux
ตอนนี้ฉันได้ทำไปแล้วครั้งหนึ่งโดยทำตามคำแนะนำของที่เก็บ GitHubโดยที่คำสั่งต่อไปนี้จะติดตั้ง Blitz ++ บนระบบที่เหมือน Unix:
mkdir build # Inside the cloned Github repo
cd build
cmake ..
make lib
sudo make install
sudo
สิ่งเดียวที่ฉันพยายามที่จะทำที่นี่คือการหลีกเลี่ยงการใช้ เท่าที่ฉันเข้าใจคำสั่งนั้นจะติดตั้งไฟล์และไลบรารีภายในไดเร็กทอรีที่ต้องการสิทธิ์ sudo ยอมรับการปรับเปลี่ยนใด ๆ (แก้ไขฉันถ้าฉันผิดฉันไม่ชำนาญที่นี่) แต่บอกว่าฉันต้องการติดตั้งไลบรารีในไดเร็กทอรี I ที่ฉันมีสิทธิ์เพื่อหลีกเลี่ยงการใช้sudo
?
ฉันจะติดตั้งไลบรารีดังกล่าวในโฮมไดเร็กทอรีบน Linux โดยไม่ต้องเรียกใช้ได้sudo
อย่างไร
ฉันรู้ว่าสำหรับไลบรารี C ++ อื่นมี.configure
ไฟล์อยู่ในไดเร็กทอรีที่เกี่ยวข้องและโดยการพิมพ์บางอย่างตามบรรทัดของ./configure --prefix=<directory_path>
(เนื่องจากไดเร็กทอรีการทำงานปัจจุบันเป็นไดเร็กทอรีไลบรารี) จะอนุญาตให้ติดตั้งไลบรารีในพา ธ ที่ระบุ
แต่ฉันไม่สามารถหาวิธีทำสิ่งที่คล้ายกับ Blitz ++ ได้ตลอดชีวิตเนื่องจากไม่มี.configure
ไฟล์ใด ๆ เลย อาจมีวิธีอื่น แต่ฉันขาดความรู้ในด้านนี้อย่างที่สุด ความช่วยเหลือใด ๆ ที่ได้รับการชื่นชม
นอกจากนี้หากใครมีลิงก์หรือแหล่งข้อมูลที่ช่วยในการทำความเข้าใจวิธีการทำงานของไลบรารี C ++ และวิธีการติดตั้งโดยทั่วไปตลอดจนทรัพยากร C ++ อื่น ๆ ที่แนะนำเราจะยินดีมากหากคุณแจ้งให้เราทราบหากไม่ใช่เรื่องไม่สะดวก ขออภัยในความผิดพลาดและความไม่รู้ของฉัน
คำตอบ
นี่เป็นคำถาม CMake จริงๆ คุณกำลังมองหาCMAKE_INSTALL_PREFIX ตัวอย่าง:
mkdir build # Inside the cloned Github repo
cd build
cmake -DCMAKE_INSTALL_PREFIX=<directory_path> ..
make lib
make install