电脑装好Linux系统后,系统默认安装软件不齐,需要自己根据自己的需要安装一些列工具软件,在linux系统中,用的最多的就是Synaptic Package Manager,什么是Synaptic?新立得(Synaptic)是 debian 及其衍生版本如Ubuntu Linux操作系统的包管理工具apt的图形化前端。它结合了图形界面的简单操作和 apt-get 命令行工具的强大功能。您可以使用新立得安装、删除、配置、升级软件包,对软件包列表进行浏览、排序、搜索以及管理软件仓库或者升级整个系统。您可以进行一些系列操作形成操作队列,并一起执行它们。新立得会提示您可能的依赖关系(您所选择的软件包所需的额外软件包)以及您所选择的软件包与系统中已经安装了的软件包的冲突。

(一)

1、

Eclipse安装:

  首先,在 Synaptic Package Manager中搜索eclipse,为什么选Synaptic Package Manager ,其中有一点就是这个管理工具会帮我们把安装软件相关联的且必须需要的软件也会安装上,然后勾选eclipse,其相应的软件包也会被安装,但如果想让eclipse运行C++程序,还需要找到eclipse-cdt-qt包,它不会随安装eclipse而自动安装

安装完这些包之后需要安装g++,同样用上面的方法,将g++安装好,为了能使eclipse运行C ++程序,需要配置eclipse参数路径

注意图上选择的项目类比,以及修改的地发,其中/usr/bin/是我们修改的路径,这时可以验证下是否可以运行C++程序,到这里如果安装都正确的话是可以正常运行c++程序的。

2.

在eclipse中安装PyDev ,我们可以在help--》install new software 中输入相应的网站地址,如下图

安装好后,eclipse还不能运行python程序,因为我们的电脑中还没有安装python3.x,一般系统默认会安装python2.7,但这个版本不足以满足以后的编程,所以需要安装至少3.0以上的版本,在Synaptic中搜索安装python3,安装好后还需要配置eclipse,配置图如下

点击ok,此时eclipse能够运行python程序。

(二)

cmake 的安装

利用Synaptic Package Manager安装Cmake,注意还要勾选 cmake-gt-gui 图形界面文件包,安装好后,我们可以打开cmake  。实验室操作运行OTL 需要三个最基本的工程文件,OptimizationTemplateLibrary  PyOptimization PyOTL .然后就是用cmake 编译工程文件,编译的过程中需要设置cmake参数,编译OptimizationTemplateLibrary时

注意:上面这里需要修改下:

Boost_UNIT_TEST_FRAMEWORK_LIBRARY_DEBUG :/usr/lib/x86_64-linux-gnu/libboost_unit_test_framework.a

Boost_UNIT_TEST_FRAMEWORK_LIBRARY_RELEASE :/usr/lib/x86_64-linux-gnu/libboost_unit_test_framework.a

第二张

第三张

然后就是编译PyOTL文件:

第一张,这里需要注意几点:

1)PyOTL_MODULE_ROOT : 我开始安装的时候路径是:/home/hujianjie/.local/lib/python2.7/site-packages,编译的时候一直报错,因为下面cmake选的是python3,所以可以将PyOTL_MODULE_ROOT路径删除,再generate

2)CMAKE_CXX_FLAGS 路径有两种形式,一种是在g++下的,需要将其设置为:-std=gnu++0x -fPIC ,另一种就是-std=c++11 -fPIC

第二张

第三张:这里需要注意OTL_LIBRARIES路径,如果没有先cmake编译OptimizationTemplateLibrary,是获取不到/home/hujianjie/workspace/OptimizationTemplateLibrary/lib/libOTL.a

以上cmake 编译完成工程,PyOptimization不需要cmake,然后将三个文件import到eclipse中,这样项目环境和步骤基本完成。

(三)

接下来就是验证运行。

在运行过程中出现了一下错误:

1)NotImport  numpy 错误,需要安装 numpy,scipy 两个包;

2)database error ,PyOptimization工程中找到config.ini 在其里面,将[database]的路径修改成你当前存放database文件的相对路径,我的是
file.Linux = $HOME/Documents/Database/experiment.sqlite3

3)另外出现的问题描述不记得了,解决方案是需要安装python3-tk和matplotlib

310实验室 Linux 软件安装常见问题的更多相关文章

  1. Linux软件安装,RPM与YUM

    为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3843955.html ...

  2. Linux基础学习(6)--Linux软件安装

    第六章——Linux软件安装 一.软件包管理简介 1.软件包分类: (1)源码包:脚本安装包 (2)二进制包(RPM包.系统默认包) 2.源码包: (1)源码包的优点:开源,如果有足够的能力,可以修改 ...

  3. Linux软件安装中RPM与YUM 区别和联系

    .tc-nav-row{ height:38px; margin: 8px 15px; } .tc-nav-tab{ text-align: center; color:#333333; line-h ...

  4. 第五部分 linux 软件安装RPM SRPM与YUM

    第五部分  linux  软件安装RPM    SRPM与YUM   软件管理员简介 RPM与DPKG两大主流 rpm: redhat       centos     suse    命令:yum ...

  5. Unix/Linux 软件安装

    Unix/Linux 软件安装 首先我们明确.在Unix like的机器上,一套软件并不唯独一个程序,而是一堆程序代码文件. 比如main.c,haha.c,sin_value.c这三个源码文件. 1 ...

  6. Linux软件安装——服务管理的命令

    Linux软件安装——服务管理的命令 摘要:本文主要学习了Linux系统中服务管理的命令. service命令 service命令用于对系统服务进行管理,比如启动(start).停止(stop).重启 ...

  7. Linux软件安装——服务管理

    Linux软件安装——服务管理 摘要:本文主要学习了Linux中有关服务管理的知识. 什么是服务 服务一般是放置在后台运行的一个或多个进分程,为用户或系统提供某项特定的服务,有些是系统服务,有些则是独 ...

  8. Linux软件安装——安装软件的命令

    Linux软件安装——安装软件的命令 摘要:本文主要学习了如何在Linux系统中安装.更新.卸载软件. rpm命令 rpm命令用来在Linux系统上进行软件的安装. 基本语法 安装命令: rpm -i ...

  9. Linux软件安装——软件包

    Linux软件安装——软件包 摘要:本文主要学习了Linux下软件安装的相关知识. 软件包 简介 Linux下的软件包众多,且几乎都是经GPL授权.免费开源(无偿公开源代码)的.这意味着如果你具备修改 ...

随机推荐

  1. Windoows窗口程序五

    程序执行机制 过程驱动-程序的执行过程是按照预订好的顺序执行. 事件驱动-程序的执行是无序,用户可以根据需要随机触发相应的事件. Win32窗口程序就是采用事件驱动方式执行,也就是消息机制. 当系统通 ...

  2. Namenode HA原理详解

    社区hadoop2.2.0 release版本开始支持NameNode的HA,本文将详细描述NameNode HA内部的设计与实现. 为什么要Namenode HA? 1. NameNode High ...

  3. Spring 4 官方文档学习(十一)Web MVC 框架之Flash Attributes

    接上一篇中的重定向. http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-fl ...

  4. Global.asax中使用HttpContext为空

    application启动的时候并没有对应的HttpContext.Current请求所以会出错 用System.Web.Hosting.HostingEnvironment.MapPath就可以了

  5. 在C语言中实现面向对象(2)

    C语言是结构化和模块化的语言,它是面向过程的.但它也可以模拟C++实现面向对象的功能.那么什么是对象呢?对象就是一个包含数据以及于这些数据有关的操作的集合,也就是包含数据成员和操作代码(即成员函数). ...

  6. php -- 读取文本文件内容

    php读取文件内容的三种方法:    //**************第一种读取方式*****************************  代码如下: header("content- ...

  7. MJRefresh原理分析

    MJRefresh是流行的下拉刷新控件.前段时间为了修复一个BUG.读了它的源代码.本文总结一下实现的原理 下拉刷新的基本原理 大部分的下拉刷新控件.都是用contentInset实现的.默认情况下. ...

  8. optimization blocks (csapp chapter 5.1)

    p_511 编译器在没有指示下,会做‘ safe optimization',因此有些优化在没有参数的指示下是不会对代码做优化的,故在程序中应该避免某一类代码,因为它们妨碍了编译器做优化. optim ...

  9. mac Virtualbox Ubuntu 设置共享目录

    如果要用VirtualBox自带的共享文件夹功能,必须先安装Guest Additions.安装方法:置顶的菜单条->devices->Install Guest Additions.点击 ...

  10. BleedTree动画混合树

    通过Unity动画状态机,能帮我们轻松处理转换各个动画片断,达到想要的效果,但是如果仅仅是一个个动画的硬生生的切换,那么看起来就非常突然,而不真实了,在质量要求比较高的游戏中,特别是动作游戏,我们就不 ...