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. Windows 7下Maven3.0.3的安装

    1.去Maven官网下载zip的maven3.0.3压缩包 2.将安装包解压到某目录,我在这里解压到D:\Program Files (x86)\apache-maven-3.0.3 3.设置系统变量 ...

  2. xss编码小结

    一.JS编码与HTML编码区分: HTML实体可以使用十进制与十六进制编码:javascript可以使用Unicode与八进制与十六进制进行编码. 二.编码原理区分: 三.编码与非编码 对于JS编码: ...

  3. RocketMQ里的一个获取时间的工具类SystemClock

    看rocketmq源码的时候发现他们还给时钟封装里一下. /** * Licensed to the Apache Software Foundation (ASF) under one or mor ...

  4. ​Mac触控板常用的手势操作

    ​Mac触控板常用的手势操作 学习了:http://topbook.cc/archives/151   一个手指直接点击,类似Windows中鼠标左键功能,同时在苹果Safari等浏览器中,这个手势还 ...

  5. [Javascript] Automate the process of flattening deeply nested arrays using ES2019's flat method

    Among the features introduced to the language of JavaScript in ES2019 is Array.prototype.flat. In th ...

  6. 【资料总结】html开发小实例

    目 录 第1章 1 HTML的基本标签 1 第2章 25 表格基础 25 第3章 53 表单和框架 53 第4章 77 CSS样式表 77 第5章 104 使用Dreamweaver制作网页 104 ...

  7. 解决svn Authorization failed错误

    解决svn Authorization failed错误 (2010-09-22 21:37:31) 转载▼   出现该问题基本都是三个配置文件的问题,下面把这个文件列出来 svnserve.conf ...

  8. LoadRunner解决超时错误

    在运行脚本回放过程中,有时会出现错误,这在实际测试中是不可避免的,毕竟自动录制生成的脚本难免会有问题,需要运行脚本进行验证,把问题都解决后才加入到场景中进行负载测试.下面结合常用的协议(如Web.We ...

  9. 理解和使用 Promise.all 和 Promise.race

    一.Pomise.all的使用 Promise.all可以将多个Promise实例包装成一个新的Promise实例.同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回 ...

  10. 关于ThreadLocal变量的一个坑

    每个线程都有一个ThreadLocalMap对象,ThreadLocalMap是Thread的一个内部类,可以把ThreadLocalMap理解成一个Map,这个Map里存放这一个Thread的所有线 ...