日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Mex文件在VS2010中调试方法

發(fā)布時間:2025/3/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mex文件在VS2010中调试方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Mex文件在VS2010中調(diào)試方法

  matlab里面無法單步調(diào)試mex函數(shù),故需轉(zhuǎn)到VS上面調(diào)試,這里采用VS2010。

  參考網(wǎng)上很多人寫的方法但都很亂,雜,試了多次都沒有成功。今天終于解決了,現(xiàn)把方法記錄下來。

? ? ? 1、VC中編寫Mex函數(shù)

  新建一個win32?dll 空項目。

  2、添加源文件Test.cpp,編寫MEX函數(shù),MEX函數(shù)編寫方法這里不贅述了。

  3、配置項目屬性。  

  打開項目屬性配置頁,C++ -> 附加包含目錄 加入MATLAB安裝目錄下的 \extern\include 路徑。

  連接器 -> 附加庫目錄 加入MATLAB的 \extern\lib\win32\microsoft 路徑。

  連接器 -> 輸入 -> 附加依賴項 輸入libmx.lib libeng.lib libmat.lib libmex.lib 這四個lib文件。

  在Linker-General-Output File:改成

                   .\Debug\(ProjectName).mexw32(64位系統(tǒng)相應改成64)

  Source Files- Add - New Item新建模塊定義文件Test.def

  并為其添加內(nèi)容

          LIBRARY ;"Test"
          EXPORTS mexFunction

  在Linker-Input-Module Definition File添加:Test.def

  4、F7生成解決方案,如果以上都正確,便會在工程Debug目錄下生成一個(ProjectName).mexw32文件。

  5、在VS中單步調(diào)試MEX函數(shù)。

    將matlab的current folder 設(shè)置成mexw32文件所在的路徑,即Debug目錄。(這步非常重要,要不無法調(diào)試調(diào)用)

    vs2010-Tools-附加到線程 Attach to process-選擇matlab。

在源代碼Test.cpp里設(shè)置斷點。 在matlab工程里輸入代碼或者函數(shù)(即mexw32文件的文件名,這里為ProjectName),即會跳轉(zhuǎn)到vs的斷點處。 然后按F10便可單步執(zhí)行。 6、每次修改MexFunction所在的.cpp文件后,重新編譯生成解決方案前都需要先在matlab工程下clear一下,即 clear?(ProjectName).mexw32 注意:這步非常重要,因為matlab在調(diào)用該mex函數(shù)后還一直占用,未釋放,必須要clear下,vs中才可重新編譯生成解決方案。 好的,按照以上方法就可以任意編寫可調(diào)試的mex函數(shù)啦。 調(diào)試成功后把(ProjectName).mexw32文件copy到任意matlab工程里,就可以像函數(shù)調(diào)用一樣任意使用啦。 [參考] 1、VS2010中C++創(chuàng)建圖解
2、Matlab中MEX文件的編寫與調(diào)試

轉(zhuǎn)載于:https://www.cnblogs.com/wjgaas/p/4994292.html

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的Mex文件在VS2010中调试方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。