ฉันมีโครงการที่ฉันทำงานในผู้สร้าง Qt ที่ต้องใช้ห้องสมุดบุคคลที่สาม ฉันต้องการเพิ่มส่วนหัวไปยังเส้นทางรวมสำหรับโครงการ ฉันจะทำสิ่งนี้ได้อย่างไร
ฉันมีโครงการที่ฉันทำงานในผู้สร้าง Qt ที่ต้องใช้ห้องสมุดบุคคลที่สาม ฉันต้องการเพิ่มส่วนหัวไปยังเส้นทางรวมสำหรับโครงการ ฉันจะทำสิ่งนี้ได้อย่างไร
คำตอบ:
หากคุณกำลังใช้ qmake ระบบสร้างมาตรฐาน Qt เพียงเพิ่มบรรทัดลงใน.pro
ไฟล์ตามที่บันทึกไว้ในการอ้างอิงตัวแปร qmake :
INCLUDEPATH += <your path>
หากคุณใช้ระบบสร้างของคุณเองคุณจะสร้างโครงการโดยเลือก "นำเข้าโครงการที่ใช้ Makefile" <your project name>.includes
นี้จะสร้างบางไฟล์ในไดเรกทอรีโครงการของคุณรวมถึงไฟล์ที่ชื่อ ในไฟล์นั้นเพียงแสดงรายการพา ธ ที่คุณต้องการรวมหนึ่งรายการต่อบรรทัด จริงๆทั้งหมดนี้จะบอกผู้สร้าง Qt ที่จะมองหาไฟล์ที่จะจัดทำดัชนีสำหรับการเติมอัตโนมัติ ระบบการสร้างของคุณเองจะต้องจัดการกับเส้นทางรวมในทางของตัวเอง
ในฐานะที่เป็นที่อธิบายไว้ใน Qt Creator คู่มือการใช้งาน , <your path>
ต้องเป็นเส้นทางที่แน่นอน แต่คุณสามารถหลีกเลี่ยง OS-, host- หรือรายการเฉพาะผู้ใช้ของคุณใน.pro
ไฟล์โดยใช้$$PWD
ซึ่งหมายถึงโฟลเดอร์ที่มีของคุณ.pro
ไฟล์เช่น
INCLUDEPATH += $$PWD/code/include
INCLUDE_PATH
INCLUDEPATH
ฉันจะแก้ไขคำตอบของคุณ :)
QMAKE_CXXFLAGS
ตัวแปรแทนเพราะINCLUDEPATH
เป็นรถ (อย่างน้อยในขณะนี้ - QT5) เช่นเมื่อผมรวมINCLUDEPATH += ../../../
ที่ได้รับการแต่งตั้ง QT -I../../../GUI
ไดเรกทอรีเพียงการสุ่มในเส้นทางนี้และคอมไพเลอร์มีตัวเลือก
INCLUDEPATH
ระบุมีความสัมพันธ์กับไดเรกทอรีการสร้างไม่ได้เกี่ยวข้องกับไดเรกทอรีที่.pro
เป็นคนอาจสันนิษฐานได้ง่าย ดังที่แสดงในการแก้ไขคำตอบของฉันคุณสามารถใช้ `$$ PWD 'เพื่อรับโฟลเดอร์ที่กำหนดไว้อย่างชัดเจนเพื่อเริ่มต้นเส้นทางการรวมด้วย
หากต้องการเพิ่มพา ธ โกลบอล include พา ธ ใช้คำสั่งที่กำหนดเองสำหรับ qmake ในโปรเจ็กต์ Build / Build / Build Steps ในส่วน "อาร์กิวเมนต์เพิ่มเติม" ดังนี้:
"QT+=your_qt_modules" "DEFINES+=your_defines"
ฉันคิดว่าคุณสามารถใช้คำสั่งใด ๆ จากไฟล์ * .pro ด้วยวิธีนี้
สำหรับใครก็ตามที่ยังใหม่กับ Qt Creator อย่างฉันคุณสามารถแก้ไขไฟล์. project ของคุณจากภายใน Qt Creator:
เพียงดับเบิลคลิกที่ "ชื่อโครงการของคุณ" .pro ในหน้าต่างโครงการและเพิ่มพา ธ รวมที่ด้านล่างของไฟล์. pro เช่นที่ฉันทำ
หากคุณใช้ Makefiles ที่กำหนดเองคุณสามารถดับเบิลคลิกที่ไฟล์. includes และเพิ่มเข้าไปที่นั่น