matlab采用mex编译多个cpp文件
最近在看matlab code时,由于本人使用的是64系统,而code中的mex文件时在32位系统上编译的,所以需要重新自己编译maxflowmex.cpp,但是直接mex maxflowmex.cpp时,出现以下错误:
maxflowmex.obj : error LNK2019: 无法解析的外部符号 "public: __cdecl Graph<float,float,float>::Graph<float,float,float>(int,int,void (__cdecl*)(char *))" (??0?$Graph@MMM@@QEAA@HHP6AXPEAD@Z@Z),该符号在函数 mexFunction 中被引用
问题的原因是无法需要编译多个cpp文件所致。maxflowmex.cpp中包含头肩为#include "maxflow-v3.01/graph.h",所以从网上下载maxflow-v3.01放到相应目录下,如下图所示
观察maxflow-v3.01中有graph.cpp和maxflow.cpp,所以在命令行中输入mex maxflow-v3.01/maxflow.cpp maxflow-v3.01/graph.cpp maxflowmex.cpp即可。搞定!
matlab采用mex编译多个cpp文件的更多相关文章
- (原)matlab中使用mex编译多个cpp文件
以前一直是mex一个文件.刚才需要编译多个文件(如a.cpp调用b.cpp的函数,b.cpp调用c.cpp的函数).如果只是mex a.cpp,提示函数找不到函数. 突然想到mex c.cpp b.c ...
- [vim配置]windows下在vim中使用gcc/g++编译调试c/cpp文件
在Linux里面混了一个多月,vim编程用得甚爽.无奈前天将Linux里面的编程文件夹误删,而技术不精无法找回,悲痛欲绝.再者,无限怀念windows里面的游戏,并觉得现在在Linux里面也学不到什么 ...
- 使用matlab进行mex编译时的路径问题mexopts
matlab和vs 进行混合编程时总须要使用matlab编译mexFunction.cpp文件. 这些文件免不了使用include下的*.h和lib下的*.lib文件.举例说明.这次我 ...
- cmake 同时编译多个cpp文件
cmake_minimum_required(VERSION 2.8) project(coding) file(GLOB_RECURSE EXTRA_FILES */*) add_custom_ta ...
- # Clion中编译多个cpp(实现单文件编译)
Clion中编译多个cpp(实现单文件编译) 在不做任何配置情况下,Clion工程下只能有一个main()函数,新建多个cpp会导致报main()函数重复定义的错误,所以默认情况下无法在一个工程下编译 ...
- C语言中头文件和cpp文件解析
务必提前预读这里的内容:http://www.cnblogs.com/stemon/p/3999844.html 回到cpp文件与头文件各写什么内容的话题上: 理论上来说cpp文件与头文件里的内容,只 ...
- c中头文件在cpp文件里引用和.h文件引用的思考
我们在编敲代码中头文件是常常使用的. 可是头文件是应该包括在.H文件里还是在.cpp文件里.在这个其中有什么样去差别呢. 假如说我们编写了一个a.cpp .我们将a.cpp文件的变量和函数申明在a. ...
- VC 编译 MATLAB 的 mex 文件
VC 编译 MATLAB 的 mex 文件mex 文件是 MATLAB 调用其他程序设计语言程序或算法的接口.在 Windows 环境中,mex 文件是扩展文件名为 DLL 的动态链接库,可以在 m ...
- atom 调用g++编译cpp文件
atom 有script插件可以直接调用很多编译器,试了很多次一直出问题找不到文件,查了文档之后发现script只支持OSX和linux. 所以,还是使用gpp-compiler比较靠谱 gpp-co ...
随机推荐
- Quartz --Scheduler
- npm run build 打包后,如何查看效果
我们用vue-cli搭建的项目执行npm build后本地打开页面空白,如果才能查看npm run build之后的结果呢 首先我们看一下提示 Tip: built files are meant t ...
- git-github 提示Permission denied (publickey) (windows)
这种绝大多数情况是由于公钥设置的问题. 1.生成公钥 参考地址:https://help.github.com/articles/generating-a-new-ssh-key-and-adding ...
- 鳥哥的 Linux 私房菜
RootKit Hunter 後端偵測軟體之架設與執行 切換解析度為 800x600 最近更新日期:2004/11/16 由前面幾個章節的說明,我們可以曉得因為主機的某些服務是有漏洞的, 黑客們可以針 ...
- [HAOI2011]Problem b 题解
题目大意: 对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y)=k. 思路: 设f(k)为当1≤x≤n,1≤y≤m,且n≤m,使gcd(x,y)=k的数对 ...
- CSU 1225 最长上升子序列并记录其个数
;j<i;j++){ if(h[i] > h[j]){ ) cnt[i]+=cnt[j]; ) len[i] = len[j] + , cnt[i] = cnt[j]; } //身高相同的 ...
- 【bzoj1922】[Sdoi2010]大陆争霸 - STL - dijkstra
信仰斯普林·布拉泽的克里斯国教徒. 幻想历 8012年 3月2日,位于杰森国东部小镇神谕镇的克里斯国教徒发动 起义. 幻想历 8012年 3月7日,神谕镇的起义被杰森国大军以残酷手段镇压. 幻想历 8 ...
- CF676E:The Last Fight Between Human and AI
人类和电脑在一个多项式上进行博弈,多项式的最高次项已知,一开始系数都不确定.电脑先开始操作,每次操作可以确定某次项的系数,这个系数可以是任意实数.给出一个博弈中间状态,最后如果这个多项式被x-K整除就 ...
- nodejs window下安装与配置淘宝镜像
1,前往nodejs官网下载安装软件,地址:https://nodejs.org/en/ 2,点击下一步继续安装,安装完成,在命令输入:node -v,npm -v,查看版本,即是安装成功 3,随便在 ...
- Ubuntu 16.04在搭建Redis Cluster搭建时,使用gem install redis时出现:ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /var/lib/gems/2.3.0 directory.
注意:千万不要使用sudo来执行gem install redis. 解决方法: sudo apt-get update sudo apt-get install git-core curl zlib ...