توضیحات
زبان برنامه نویسی C و C++ یکی از زبان مورد استفاده برای پیاده سازی الگوریتم های مختلف می باشد. گاهی پیش می آید که تولباکسی در زبان برنامه نویسی سی یا سی پلاس پلاس نوشته شده باشد و بخواهیم از آن در متلب استفاده کنیم.
در این مواقع لازم است که از کمپایلرهای متلب برای تبدیل کدهای C به کدهای قابل اجرا در متلب استفاده کنیم. دستوری که در این مواقع بیشتر استفاده می شود، دستور mex می باشد.
بعد از نصب متلب ، این دستور کار نمی کند بلکه لازم است یکی از کمپایلرها یا SDK مورد نیاز را نیز نصب کنید.
ما Microsoft Visual Studio را هم نصب کردیم اما باز مشکل برطرف نشد.
ما در یک پروژه بیشتر راه های نصب کمپایلر C متلب را انجام دادیم، ولی هیچ کدام جواب نداد تا بالاخره بعد از یک ماه توانستیم این مشکل را برطرف کنیم.
تعدادی از تولباکس های نوشته شده با زبان C برای استفاده در متلب را می توانید در زیر ببینید :
BSMART: A Matlab/C Toolbox for Analyzing Brain Circuits
The Sick LIDAR Matlab/C++ Toolbox
Psychophysics Toolbox
Robotics Toolbox
خطایی که بعد از نصب نبودن کمپایلر C ظاهر می شود در زیر نمایش داده شده است :
mex -setup
No supported SDK or compiler was found on this computer.
For a list of supported compilers, see
<http://www.mathworks.com/support/compilers/R2012a/win64.html>
گاهی SDK مورد نیاز را دانلود می کنید ولی در انتها نصب دچار شکست می شود و پنجره زیر ظاهر می شود که نشان می دهد نصب به مشکل خورده است :
ما در این فیلم آموزشی قصد داریم مراحل مورد نیاز را به صورت پله پله به شما آموزش بدهیم تا در اجرای تولباکس های نوشته شده با زبان C مشکلی نداشته باشید.
قسمت اول این فیلم آموزشی :
روشنا –
سلام برای تمامی الگوریتم های دسته بند کاربرد دارد ؟
ایران متلب –
با سلام و احترام
برای هر گونه برنامه و تابعی که با زبان سی نوشته شده باشد، کاربرد دارد حال می خواهد دسته بند باشد یا هر چیز دیگری.
سجاد –
سلام برای متلب 2016 ، 64 بیتی هم کار میکنه ؟
ایران متلب –
با سلام و احترام
متلبی که در این آموزش استفاده شده است ، متلب 64 بیتی می باشد. به نسخه (version) متلب ربطی ندارد.
سجاد –
با سلام
در هنگام نصب winsdk_web پیام میده که یا سی دی نصب را قرار دهید یا به اینترنت وصل شوید ……. در صورتی که هم سی دی نصب در سی دی رام هست و هم سیستم به اینترنت متصل هستش ….. ممنون بگین چیکار کنم ؟؟؟؟؟؟؟
ایزدپناه –
اموزش فوق مربوط به ویندوزسون هست…برای ویندوز 8 باید تنها ورژن SDK را تغییر بدیم؟
ایران متلب –
برای همه نسخه های ویندوز جواب می دهد.
من –
آیا لینک خرید فوق فعال است؟و مطلب دیگر اینکه برای نصب نرم افزارها موجود در فایل آموزشی فوق، نرم افزار باید در درایوی که متلب درآن هست نصب شود یا در درایو ویندوز؟
ایران متلب –
با سلام و احترام
بله لینک خرید فعال است اگر مشکلی داشتید می توانید کارت به کارت کنید.
برخی از نرم افزارها را باید در درایو C نصب کنید. در فیلم آموزشی مراحل پله پله توضیح داده شده است.
من –
و اینکه گفته میشه ADD-ones برای نسخه های 2016 a و ذ unavailable هست بازم فایل آموزشی فوق جوابگوهست؟
ایران متلب –
سلام
بر روی نسخه متلب 2016 هم تست شده است.
ما که کارمون متلب است هنوز نشنیدیم که add on بر روی متلب قابل نصب نباشد. خیلی از قابلیت های متلب است که کاربر در صورت دلخواه می تواند نصب کند. به نظر چنین مطلبی نمی تواند درست باشد.
Mohsen Dezfouli –
با سلام
ضمن تشکر از ارسال ویدیوی آموزشی فوق
بنده مطابق دستور العمل ارائه شده در فیلم آموزشی ابتدا دو برنامه زیر را uninstall کردم:(32 بیتی و 64 بیتی)
2010++microsoft visual studio C
و سپس به نصب فایل winsdk_web.exe پرداختم . ولی متاسفانه در پایان به error خوردم.
در فایل پیوست این error را برای شما فرستاده ام .
استدعا دارم مرا راهنمایی کنید.
ایران متلب –
سلام
اگر یکی از مراحل را انجام ندهید یا زودتر انجام دهید به همین خطا برمی خورید.
فرزانه قاسمی –
سلام، برای نصب کامپایلر C , C
در متلب 2017 آیا نیاز به موارد اضافه تری نمی باشد؟
حسن اصغري –
سلام
طبق تحقیق و تجربه ما نیازی نمی باشد.
یلدا –
البته الان در پیام خطایی که متلب میدهد
فایل SDK برای دانلود وجود ندارد
بلکه فایل زیر باید دانلود و نصب شود
mingw.mlpkginstall
من این کار را انجام دادم
ولی پیامی که در بالا نوشتم ظاهر میشود
ایران متلب –
سلام
شما باید دقیقا مراحل را پشت سر هم انجام دهید.
حسینی –
من این آموزش رو خریدم خوب بود
وظیفه دوست –
من طبق فیلم پیش رفتم اما باز هم نصب sdk به error برخورد!! ویندوزم 10 هستش … چیزای دیگه هم باید نصب کنم؟ توی ویدیو شما visual sstudio 2013, 2105 هم دارید ولی من ندارم، ممکنه به این دلیل باشه؟؟
ایران متلب –
سلام
شما دقیقا مراحل داخل فیلم را انجام بدهید مشکل حل می شود.
milad –
سلام من فایهارو نصب کردم ولی متلب هنوز خطا میده
Error using mex
Creating library fmpc_sim.lib and object fmpc_sim.exp
fmpc_sim.obj : error LNK2019: unresolved external symbol dgemv_ referenced in function dnudz
fmpc_sim.obj : error LNK2019: unresolved external symbol dtrsv_ referenced in function dnudz
fmpc_sim.obj : error LNK2019: unresolved external symbol dgemm_ referenced in function dnudz
fmpc_sim.obj : error LNK2019: unresolved external symbol dtrtrs_ referenced in function dnudz
fmpc_sim.obj : error LNK2019: unresolved external symbol dposv_ referenced in function dnudz
fmpc_sim.obj : error LNK2019: unresolved external symbol daxpy_ referenced in function rdrp
fmpc_sim.obj : error LNK2019: unresolved external symbol dnrm2_ referenced in function resdresp
fmpc_sim.mexw64 : fatal error LNK1120: 7 unresolved externals
باید چکار کنم؟
ایران متلب –
سلام
یه نگاه به لینک زیر بندازید :
https://www.mathworks.com/matlabcentral/answers/178257-mex-link-with-blas
milad –
سلام من نصب کردم ولی هنوز خطا میده
Error creating library LNK 2019
ایران متلب –
سلام
لینک زیر را ببینید :
https://www.mathworks.com/matlabcentral/answers/212651-compile-c-file-include-library-using-mex-error-lnk2019-unresolved-external-symbol-for-nptracki
ميثم رحمتي –
من تمام مراحل رو انجام دام ارورميده
Error using mex
No supported compiler was found. You can install the freely available MinGW-w64 C/C++ compiler; see
Install MinGW-w64 Compiler. For more options, visit https://www.mathworks.com/support/compilers.
ایران متلب –
این خطا دقیقا نشان می دهد که هیچ کمپایلری نصب نشده است.
ابتدا نسخه متلب را چک بفرمایید و متلب نسخه های بالاتر از 2020 را نصب کنید.
سپس مراحلی که در فیلم آموزشی گفته می شود را یک بار دیگر تکرار کنید.
ميثم رحمتي –
سلاام من تمام مراحل با موفقيت انجام دادم ولي از همان ابتداي برنامه نويسي شبكه عصبي كانولوشن با متلب ارورهاي زير رو ميده
Undefined function or variable ‘setup’.
Undefined function ‘vl_nnconv’ for input arguments of type ‘single’.
amir –
سلام خسته نباشید
من فایل نصب رو مرحله به مرحله انجام دادم الان تو متلب این پیام رو میده میشه راهنمایی بفرمایید
Select a compiler:
[1] Microsoft Software Development Kit (SDK) 7.1 in C:\Program Files (x86)\Microsoft Visual Studio 10.0
[0] None
Compiler:
ایران متلب –
سلام
گزینه 1 وارد کنیدو enter بزنید.
Reza –
سلام. آیا برای matlab 2021a جواب میده؟
ایران متلب –
بله