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. zigbee 学习笔记

    在德州仪器的站点:http://www.ti.com.cn/tool/cn/z-stack上下载安装zigbee2007协议栈版,我的是ZStack-CC2530-2.3.0-1.4.0. 以下演示一 ...

  2. [转]Creating an Entity Framework Data Model for an ASP.NET MVC Application (1 of 10)

    本文转自:http://www.asp.net/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/creating-a ...

  3. (转)RedHat/CentOS安装和配置kerberos

    RedHat/CentOS安装和配置kerberos 需要在kerberos server和客户端都先安装ntp (Internet时间协议,保证服务器和客户机时间同步 ) 1  kerberos 服 ...

  4. AI 语音对话技术

    机器学习以及自然语言处理技术的进步,开启了人与人工智能进行语音交互的可能,人们透过对话的方式获取信息.与机器进行交互,将不再只是存在科幻情结当中.语音交互是未来的方向,而智能音箱则是语音交互落地的第一 ...

  5. unity linear space时 photoshop blend的正确设置

    gamma correction的dcc设置 ps在线性空间下工作 blend的时候颜色设置 勾选用灰度系数混合rgb 1.0 这样就是在线性空间下工作了 这样素材在数学上是正确的 r8g8b8a8格 ...

  6. TensorFlow------读取CSV文件实例

    TensorFlow之读取CSV文件实例: import tensorflow as tf import os def csvread(filelist): ''' 读取CSV文件 :param fi ...

  7. 兼容各浏览器的css背景图片拉伸代码

    需要用到背景图拉伸,找到了下面这段css代码: filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='***.jpg' , s ...

  8. px、em、rem的区别

    一.PX: px像素(Pixel):相对长度单位.像素px是相对于显示器屏幕分辨率而言的. PX特点 1. IE无法调整那些使用px作为单位的字体大小: 2. 国外的大部分网站能够调整的原因在于其使用 ...

  9. Elastic修改副本数量

    分片的个数在创建之后是无法再增加和减少的,除非你另外建一个索引库,而副本是可以在运行的时候,动态增加和减少.因此,在创建索引库时,规划好分片(Shard)是非常重要的,而在插入大量数据时可以先将副本书 ...

  10. 使用RMAN和控制文件备份删除归档日志的SHELL脚本--RED HAT 5 LINUX 64

    在ORACLE用户下的定时器设置 [oracle@SHARKDB dbscripts]$ crontab -l# minute hour day month week15 1  * * 0  sh / ...