EDA365电子论坛网

标题: Ubuntu 14.04+MatlabR2016b 编译COCO matlab API [打印本页]

作者: thinkfunny    时间: 2020-6-12 16:01
标题: Ubuntu 14.04+MatlabR2016b 编译COCO matlab API
前言
& p2 {/ F; f, h, X6 y5 X最近需要用到COCO的matlab api,但是github上的master分支最近删除了maskApi.mexa64文件。一种方法当然是找找别人原来fork的cocoapi,我想自己编译生成。
6 [5 d: A; S% k; ~( A, L
, Y. w. v# @! H2 z. [; I/ a编译器准备
! V; }% j  I! l/ ~2 f编译的时候需要用到mex,但是matlab 2016b支持的gcc编译器是4.9.x,而ubuntu 14.04的gcc版本是4.8.x,因此需要首先下载一下gcc 4.9 。
: Y+ k* L( K! M6 N: T8 c/ L; Q# |4 y" X# ~) S" a  A: T
编译; z* f. h' w7 ]1 H; ?/ T; F
设置好编译器之后,下载github上的cocoapi-master,解压,然后我们需要编译的其实是两个文件(在MatlabAPI/private目录下面):gasonMex.cpp以及maskApiMex.c; i& j- g: {2 P

+ r+ K% w! n9 a# X9 e6 Q( x! ?对应的编译方法其实在MatlabAPI目录下的gason.m以及MaskApi.m中有写。) l) n, {2 V% H$ C
: a2 X& ]$ s. Z& N# r* g% n

0 W; H( t$ N+ a) ]# l; H' `5 s5 k/ B6 O3 g3 R+ y

5 O% a) F  ^! D# d8 @
' f* E: M4 N" _
+ K  R% T7 O& a# \" [  G$ ^, S2 a: X+ l: Z8 ?- K6 r# {: U
编译的时候可能会提醒需要添加’fPIC’,直接在’-std=xxx’后面添加’-fPIC’即可。 + d0 j: k, G( q4 g9 y
编译完成之后,就可以生成gasonMex.mexa64以及maskApiMex.mexa64两个文件了。
- x% g$ H7 t$ Q# m2 f4 {1 f  r2 Y+ g
编译完成之后记得把系统默认的gcc切换回4.8版本。- h0 D& Y8 @( J7 r: w

# i. o9 C, t+ b& t
4 K) d6 e- D; ~8 @* W' \. Z* ?1 m/ d

作者: NingW    时间: 2020-6-12 17:04
系统默认的gcc切换回4.8版本




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2