کامپایل کد c++ در commandline - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

کامپایل کد c++ در commandline

0 امتیاز

سلام.

توی ویندوز هستم یک پروژه ای را قرار کامپایل کنم .من از فایل cu تونستم obj file را با استفاده از این پست بسازم . این پروژه یک کتابخانه با c++ است نحوه استقرار فایل های پروژه به صورت زیر:

├───include
│       config.h
│       cuda_ops.h
│       struct_util.h
│       tree_clib.h
│       tree_util.h
│
└───src
    │   tree_main.cpp
    │
    └───lib
            config.cpp
            cuda_ops.cu
            struct_util.cpp
            tree_util.cpp

حالا می خواستم راهنماییم کنید چطور از تو خط فرمان همچین کتابخانه ای را توی ویندوز کامپایل کنم؟

سوال شده مرداد 5, 1402  بوسیله ی Lori3 (امتیاز 857)   11 36 105
ویرایش شده مرداد 5, 1402 بوسیله ی Lori3

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

برای کامپایل در خط فرمان به چندین چیز نیاز دارید .

  • مشخص کردن مسیر include ها
  • مشخص سازی کلیه فایل های سورس
  • مشخص سازی کلیه فایل .obj حاصله از کامپایل فایل .cu مربوط به کودا
  • ساخت .def فایل جهت اکسپورت توابع از dll که در این پست در موردش توضیح داده شده.
  • لینک کردن کتابخانه cudart.lib مربوط به کودا به پروژه

شما مشخص نکردید که کتابخانه شما توسط کدام فایل هدر export شده از روی اسامی فایل به احتمال زیاد فایل tree_clib.h هست


cl /EHsc /LD /I include src\tree_main.cpp src\lib\config.cpp src\lib\struct_util.cpp src\lib\tree_util.cpp cuda_ops.obj /link "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\lib\x64\cudart.lib" /DEF:tree_main.def

 

پاسخ داده شده مرداد 5, 1402 بوسیله ی عباس مولایی (امتیاز 2,754)   1 5 13
انتخاب شد شهریور 8, 1402 بوسیله ی farnoosh
...