简介

这里指的modules不是linux内核相关的module,只是用于软件多版本控制的一个开源软件包,比如说系统同时有neo4j的不同版本,使用modules软件就可以使得在需要的时候选择相应的软件版本.并且有相应的conflict等操作

软件地址

http://modules.sourceforge.net/(可下载源码包)

module command:http://modules.sourceforge.net/man/module.html

modulefile:http://modules.sourceforge.net/man/modulefile.html

编译安装

1)编译安装两步,一是安装tcl,二是安装modules,步骤均为configure,make,make install(./configure --help可查看configure参数)

2)需要安装tcl包,软件下载地址为http://tcl.activestate.com/,本次选择8.5.6版本,编译安装参照http://tcl.activestate.com/doc/howto/compile.html

如configure:

 ./configure --prefix=/home/guangfa/files/tcl_865_install --enable-threads

3)然后编译安装modules要设置module的configure的--with-tcl-lib参数,如果报错“cmdModule.c:643:35: error: 'Tcl_Interp' has no member named 'errorLine'”,configure时加上CPPFLAGS="-DUSE_INTERP_ERRORLINE"。

 ./configure --prefix=/home/guangfa/files/modules_install --with-tcl-lib=/home/guangfa/files/tcl_865_install/lib CPPFLAGS="-DUSE_INTERP_ERRORLINE"

4)设置环境变量初始化modules

 #~/.bashrc
. /home/guangfa/files/modules_install/Modules/3.2./init/bash

5)编译安装结果

演示配置(neo4j graph database)

1)版本:neo4j-community-2.3.2,neo4j-community-2.3.3

2)modulefiles 配置

2.1 在/home/guangfa/files/modules_install/Modules/3.2.10/modulefiles文件夹下,建立neo4j文件夹,

2.2 建立2.3.2与2.3.2文件

(2.3.3文件)注意第一行不能变

 #%Module1.#####################################################################
##
## neo4j modulefile
##
## modulefiles/modules. Generated from modules.in by configure. conflict neo4j setenv NEO_HOME /home/guangfa/files/neo4j-community-2.3.;
prepend-path PATH {/home/guangfa/files/neo4j-community-2.3./bin};
prepend-path LD_LIBRARY_PATH {/home/guangfa/files/neo4j-community-2.3./lib};

(2.3.2文件)

 #%Module1.#####################################################################
##
## neo4j modulefile
##
## modulefiles/modules. Generated from modules.in by configure. conflict neo4j
setenv NEO_HOME {/home/guangfa/files/neo4j-community-2.3.};
prepend-path PATH {/home/guangfa/files/neo4j-community-2.3./bin};
prepend-path LD_LIBRARY_PATH {/home/guangfa/files/neo4j-community-2.3./lib};

2.3 设立默认的版本,cp 2.3.3 .default,这样就将2.3.3设为默认版本

3)module avail

4)版本load与unload示意图

5)将module load neo4j写进.bashrc文件,就可以默认使用2.3.3版本

备注:感谢老司机的指点~

Linux-modules software的更多相关文章

  1. Linux modules install

    安装模块的时候出现错误:modprobe: chdir(3.0.35-g6774ed9-dirty): No such file or directory. 内核模块没有安装正确.本文记录解决方法. ...

  2. Linux Modules Introduction

    Modules are small kernel extensions ,that may be loaded and unloaded at will● Can implement drivers, ...

  3. Linux 基础

    命令说明 $ type cmd # 获取命令类型 $ which cmd # 命令的位置 $ help cmd / cmd --help / man cmd # 获取命令帮助 $ whatis cmd ...

  4. linux奇技淫巧 2

    压缩解压==================================================================================== unzip xx.zi ...

  5. linux奇技淫巧

    用着用着就发现,linux的每个命令都是那么的深奥而富有技巧,实用而淫荡..真可谓奇技淫巧.... 初学的真不易掌握... http://www.cnblogs.com/include/archive ...

  6. 跟着鸟哥学Linux系列笔记0-扫盲之概念

    相关缩写全称: POSIX(Portable Operation System Interface):可携式操作系统接口,重点在于规范内核与应用之间的接口,由IEEE定义发布 IEEE: 美国电气与电 ...

  7. 07 Linux su和sudo命令的区别

    一. 使用 su 命令临时切换用户身份 1.su 的适用条件和威力 su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用 ...

  8. 如何测量一个嵌入式Linux系统的功耗/power dissipation/power wastage/consumption

    参考: 1.Linux Circuit Software To Calculate Power Dissipation

  9. 如何编写Linux设备驱动程序

    一.Linux device driver 的概念 系统调用是操作系统内核和应用程序之间的接口,设备驱动程序是操作系统内核和机器硬件之间的接口.设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看 ...

  10. android-tools adb for ARM Linux

    /************************************************************************* * android-tools adb for A ...

随机推荐

  1. chrome inspect 远程调测:Chrome on Android之一 普通调试

    本文PC环境: Chrome: 版本 33.0.1750.22 dev MAC OS:OS X 10.9.1 特别注意:Chrome DevToolsl使用时会联接到appspot.com,而此网址被 ...

  2. DELPHI的split函数的各种实现方法(转)

    一.单字符 function split(s,s1:string):TStringList;beginResult:=TStringList.Create;while Pos(s1,s)>0 d ...

  3. _jobdu_1384:二维数组中的查找

    /************************************************************************/ /* 题目描述: 在一个二维数组中,每一行都按照从 ...

  4. DevOps 高效 shell 命令

    1.查看指定进程的top信息 大家都知道用top来查看系统实时指标,在 Linux 服务器上,如果想查看特定进程的top实时信息(以 node 进程为例),可以使用这样的命令: top -p `pgr ...

  5. SQL优化之【类型转换】

    DBA的日常工作中SQL优化占大半的时间,通常都是SQL语句性能问题或者schema设计有问题,最近遇到一个类型转换的问题,所以在这里分享一下,废话不多说了,直接建表进行测试. mysql), key ...

  6. Redis Cluster 3.0搭建与使用

    Redis Cluster终于出了Stable,这让人很是激动,等Stable很久了,所以还是先玩玩. 一. 集群简单概念. Redis 集群是一个可以在多个 Redis 节点之间进行数据共享的设施( ...

  7. UAPStudio授权过期的解决方法,重新授权

    1.启动lisence服务器,生成硬件锁, 并导入授权. 需要注意的地方:1.点击工具栏“帮助”下的“UAP-STUDIO”授权管理. 2.删除“D:\UAP-STUDIO\Platform\bin” ...

  8. Apache Spark源码走读之20 -- ShuffleMapTask计算结果的保存与读取

    欢迎转载,转载请注明出处,徽沪一郎. 概要 ShuffleMapTask的计算结果保存在哪,随后Stage中的task又是如何知道从哪里去读取的呢,这个过程一直让我困惑不已. 用比较通俗一点的说法来解 ...

  9. MyBatis传入参数为集合 list 数组 map写法

    foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合.foreach元素的属性主要有item,index,collection,open,separator,close.ite ...

  10. IOS开发之开篇--CocoaPods安装

    CocoaPods是什么?当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其 ...