MICO是CORBA标准的一个实现。开源并且被广泛使用。

首先的首先,看用户手册,在页面"http://www.mico.org/docu.html"找到一本教材"MICO: An Open Source CORBA Implementation",去Google搜一下,有PDF下载

然后,选择一个正确的下载包

打开www.mico.org,点击"download"

可以看到下图所示

这里不要去选择第一项"Complete sources...",我第一次下载的就是这个,各种编译不过

要去选第二项:"Development snapshots...",即:http://mico.org/snapshots/

进入该页面之后再选择日期最近的一个版本,目前是:mico-2014-02-13.tar.bz2

好了,下载完毕,现在就是编译安装的问题了

1、Windows7

在Windows下编译,我首先选择的是Cygwin,先./configure再make,再make install,但是总是出错,搞不清楚什么情况。具体就不说了。下面直接说编译成功的过程。

通过查看"MICO: An Open Source CORBA Implementation",里面提到可以用Microsoft Visual-C++来编译,并且MICO提供了Windows版本的Makefile,叫Makefile.win32

我想也是,在Windows平台下,不用Microsoft自家的编译器又是何必呢,于是安装VS2013,然后百度了一下,原来VC版本的make叫做nmake

于是:打开开始菜单>选择Visual Studio 2013>Visual Studio Tools>VS2013 开发人员命令提示

cd D:\CORBA\mico-2014-02-13 // mico-2014-02-13文件夹就是压缩包解压后的文件夹,里面有Makefile以及Makefile.win32

nmake /f Makefile.win32 // /f 类似unix下的-f参数,指定文件

成功编译!

现在D:\CORBA\mico-2014-02-13中多了一个文件夹是win32-bin,里面有MICO在Windows平台下的exe文件以及一个lib文件夹,里面是MICO的.lib文件

头文件在D:\CORBA\mico-2014-02-13\include中

2、Ubuntu

在linux或者unix下,一般流程都是先./configure再make,再make install,根据MICO的文档,MICO也不例外,直接解压然后按这个流程来就是了

需要注意的是,如果你在make install的时候报错提示你permission denied,原因很简单,make install要拷贝MICO的头文件、可执行文件、库文件到/usr中,而/usr是受保护的目录,你需要提供管理员权限才能对这个目录中的内容进行修改,因此,使用sudo make install然后再输入你的管理员密码即可

默认的可执行文件安装路径是/usr/local/bin,比如mico-ar, mico-cpp, mico-ld等等都在这个目录下

默认的库文件安装路径是/usr/local/lib,比如libmico2.3.13.a, libmico2.3.13.so

默认的头文件安装路径是/usr/local/include,比如CORBA.h,mico/basic.h

如果你需要改变安装路径,查看INSTALL.txt,可以知道使用./configure --prefix=<Install path>即可,例如你的用户名是admin,你想安装到Documents/micoinstall这个目录下,你就用./configure --prefix=/home/admin/Documents/micoinstall即可

建议不要使用--prefix,免得你还得去修改环境变量来找到MICO的可执行文件、头文件、库文件

另外,如果在编译安装过程中遇到了Permission denied报错,比如make install的时候报Permission denied,那么就加上sudo,用sudo make install再输入密码即可。

在Windows7和Ubuntu上编译安装MICO的更多相关文章

  1. .NET跨平台:在Linux Ubuntu上编译coreclr/corefx/dnx(20150617)

    编译时间:北京2015年6月17日上午 操作系统:Ubuntu 14.04.2 LTS Mono版本:Mono JIT compiler version 4.3.0 (master/3445ac5 T ...

  2. 在ubuntu上编译chrome

    在ubuntu上编译chrome 在ubuntu上编译chrome 红心地瓜 1.获取代码 1)下载tarball,http://chromium-browser-source.commondatas ...

  3. 使用Ubuntu系统编译安装Zabbix企业级监控系统

    使用Ubuntu系统编译安装Zabbix企业级监控系统   作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Ubuntu系统部署笔记:https://www.cnblogs.com/ ...

  4. Ubuntu下编译安装postgreSQL 10.5

    Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...

  5. 在Ubuntu下编译安装GreatSQL

    在Ubuntu下编译安装GreatSQL 本次介绍如何利用Docker构建Ubuntu环境,并将GreatSQL源码编译成二进制文件. 1.准备工作 先创建本次Docker的workdir为 /dat ...

  6. Ubuntu 14 编译安装 PHP 5.4.45 + Nginx 1.4.7 + MySQL 5.6.26 笔记

    Ubuntu 14 编译安装 PHP 5.4.45 + Nginx  1.8.0/1.4.7 + MySQL 5.6.26 笔记,主要是给自己的PC机安装,非生产环境! 一.下载必要的源码 1.1.下 ...

  7. Ubuntu 12 编译安装 PHP 5.4 及 问题汇总

    参考先前的文章:Ubuntu 14 编译安装 PHP 5.4.45 + Nginx 1.4.7 + MySQL 5.6.26 笔记 安装过程: ############################ ...

  8. Ubuntu上如何安装Java,Eclipse,Pydev,Python(自带,不用装),BeautifulSoup

    如何安装Java,如果出于编程的需要安装Java,需要安装的是JDK,而不仅仅是JRE,下面说说如何在Ubuntu下如何安装JDK:只有两步,1.下载并解压,2.配置环境变量1.下载并解压:下载地址: ...

  9. 【转】Ubuntu 上编译Android出现cannot find -lstdc++解决办法

    [转]Ubuntu 上编译Android出现cannot find -lstdc++解决办法 在Ubuntu 12.04 x86_64机器上编译Android出现下面错误,是因为找不到32bit的li ...

随机推荐

  1. sqlserver的CTE实现递归查询

    --递归查询 IF OBJECT_ID('DiGui','U') IS NOT NULL DROP TABLE DiGui CREATE TABLE DiGui( Id ), ParentId ) ) ...

  2. HTML5中表单验证的8种方法

    HTML5中表单验证的8种方法 2012-4-21 11:00| 发布者: benben| 查看: 2765| 评论: 0 摘要: 前一篇,我们介绍了HTML5中新的表单特性和函数, 今天就继续来谈谈 ...

  3. Koch 分形,海岸线,雪花

    此算法用于生成Koch分形(海岸线,雪花).速度高速,效果绚丽 //支持的初始直线水平角度为60 的倍数. 交换起点与终点坐标可改变生成方向 void Koch(CDC *pDC, int x1, i ...

  4. python 实现简单的感知机

    最近在自学机器学习,记录下一些学习记录 如何用python实现一个简单的感知机 需要安装numpy库,即下面用到的np 简单的说就是 通过计算权重向量w和输入向量x的线性组合,判断该线性组合是否大于某 ...

  5. c/c++的|、||、&、&&、异或、~、!运算

    位运算     位运算的运算分量只能是整型或字符型数据,位运算把运算对象看作是由二进位组成的位串信息,按位完成指定的运算,得到位串信息的结果. 位运算符有:     &(按位与).|(按位或) ...

  6. [Python爬虫] 之十二:Selenium +phantomjs抓取中的url编码问题

    最近在抓取活动树网站 (http://www.huodongshu.com/html/find.html) 上数据时发现,在用搜索框输入中文后,点击搜索,phantomjs抓取数据怎么也抓取不到,但是 ...

  7. AWK 怎么读取标准输入(STDIN)

    在 awk 系列中,我们将会看到几个例子,你可以筛选其他命令的输出代替从一个文件读取输入作为 awk 的输入.我们首先从使用 dir 命令开始,它类似于 ls 命令. 在第一个例子下面,我们使用 di ...

  8. 阿里巴巴Android开发手册(规约)

    阿里巴巴Android开发手册(规约) 学习了:https://www.cnblogs.com/jb2011/p/8487889.html  这个猛 https://blog.csdn.net/ali ...

  9. 转:关于android webview实践的文章集合

    http://blog.csdn.net/jiangqq781931404/article/category/2681765

  10. VS报表图解《一》---菜鸟版

    与原先的开发环境VB.EXE不同VS2013自带了报表控件ReportViewer能够内部实现报表的设计,本文主要通过绑定数据集来实现报表的显示 1.加入:reportviewer控件,当将控件显示在 ...