ฉันมีปัญหาในการรวบรวมตัวอย่างบางส่วนที่มาพร้อมกับ CUDA SDK ฉันได้ติดตั้งไดรเวอร์นักพัฒนาแล้ว (เวอร์ชัน 270.41.19) และชุดเครื่องมือ CUDA จากนั้นก็เป็น SDK (ทั้งเวอร์ชัน 4.0.17)
เริ่มแรกมันไม่ได้รวบรวมเลยให้:
error -- unsupported GNU version! gcc 4.5 and up are not supported!
ฉันพบบรรทัดที่รับผิดชอบใน 81: /usr/local/cuda/include/host_config.h และเปลี่ยนเป็น:
//#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 4)
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 6)
จากจุดนั้นฉันมีเพียงไม่กี่ตัวอย่างที่จะรวบรวมมันหยุดด้วย:
In file included from /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h:162:0,
from /usr/include/c++/4.6/ext/atomicity.h:34,
from /usr/include/c++/4.6/bits/ios_base.h:41,
from /usr/include/c++/4.6/ios:43,
from /usr/include/c++/4.6/ostream:40,
from /usr/include/c++/4.6/iterator:64,
from /usr/local/cuda/include/thrust/iterator/iterator_categories.h:38,
from /usr/local/cuda/include/thrust/device_ptr.h:26,
from /usr/local/cuda/include/thrust/device_malloc_allocator.h:27,
from /usr/local/cuda/include/thrust/device_vector.h:26,
from lineOfSight.cu:37:
/usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h:251:1: error: pasting "__gthrw_" and "/* Android's C library does not provide pthread_cancel, check for
`pthread_create' instead. */" does not give a valid preprocessing token
make[1]: *** [obj/x86_64/release/lineOfSight.cu.o] Error 1
เนื่องจากตัวอย่างบางส่วนรวบรวมฉันคิดว่านี่ไม่ใช่ปัญหาไดรเวอร์ แต่ต้องมีบางอย่างเกี่ยวข้องกับเวอร์ชัน gcc ที่ไม่รองรับ การดาวน์เกรดไม่ใช่ตัวเลือกเนื่องจาก gcc4.6 มีทั้งระบบเป็นการพึ่งพา ณ จุดนี้ ...