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. 网络工程师岗位基础面试题【适用于CCNA/CCNP基础】

    网络工程师岗位基础面试题[适用于CCNA/CCNP基础] 1: 交换机是如何转发数据包的?交换机通过学习数据帧中的源MAC地址生成交换机的MAC地址表,交换机查看数据帧的目标MAC地址,根据MAC地址 ...

  2. gmock学习01---Linux配置gmock

    本文目的 本文主要介绍gmock 1.6.0版本在Linux上如何部署和使用. gmock是做什么的? 使用C++手动编写mock对象将会是一件十分耗时,易于出错,枯燥乏味的事情.gmock提供一整套 ...

  3. Android媒体扫描详细解析之一(MediaScanner & MediaProvider)

    用过Android手机的同学都知道,每次开机的时候系统会先扫描sdcard,sdcard重新插拔(挂载)也会扫描一次sdcard. 为什么要扫描sdcard,其实是为了给系统的其他应用提供便利,比如, ...

  4. 一个tomcat中部署多个项目

    在各自的项目web.xml中添加 <context-param> <param-name>webAppRootKey</param-name> <param- ...

  5. MVC入门教程二[第一个小Demo](转载)

    本文目标 1.了解"模型"."视图"."控制器"的创建.调试和使用过程. 本文目录 1.创建模型 2.创建视图 3.创建控制器 4.调试 5 ...

  6. golang 聊天室

    近期看了一些关于golang的资料.发现它的WEBSOCKT实现真起来真的非常easy.以下是代码 go.net/websocket是须要安装的,这个自己装上即可 package main impor ...

  7. C# 和 Java的区别积累

    1.类的继承 A.C#用 ":"符号: B.Java用关键字 extends: 2.接口的实现 A.C#用 ":"符号: B.Java用关键字 implemen ...

  8. Apache James 发送邮件到外网

    在config.xml文件中查找到<dnsserver>然后把默认的<server> 127.0.0.1</server> 改成如下形式:<dnsserver ...

  9. iOS 九宫格手势密码

    代码地址如下:http://www.demodashi.com/demo/11490.html 一.准备工作 需要准备什么环境 xcode,iOS8+ 本例子实现什么功能 主要实现手势密码设置,验证 ...

  10. (三)Solr——Solr的基本使用

    1. Schema.xml 在schema.xml文件中,主要配置了solrcore的一些数据信息,包括Field和FieldType的定义等信息,在solr中,Field和FieldType都需要先 ...