Linux软件管理 - 编译安装 文本关键字:Linux、软件管理、configure、make、make install 一、环境准备 很多软件下载之后是一个源码包,是不能够直接运行的,需要先进行编译安装...,几乎可以满足绝大部分源码软件对编译环境的需要。...其他组件 在进行实际软件安装时,由于软件与软件之间可能也会存在依赖和调用关系,如:在源码编写时引入了某个类库,如果我们的系统中没有相关的类库,就会编译失败,这个时候我们只要根据报错信息安装相应的缺失类库即可...配置:configure 编译安装的第一步就是执行configure脚本,会检查编译构建当前软件的所需环境,同时用户可以根据需要指定相关的配置。...编译安装:make install 执行最后一步:编译安装,根据configure阶段的配置,将已经生成的软件安装到指定的目录中去,可以对可执行文件定义软连接或者添加到环境变量,方便使用。
private synchronized ObjectPool getPool(Object key, ConnectionFactory connection...
libtool gcc-c++ openssl-devel ncurses-devel ant maven protocolbuf findbugs cmake 1、Protobuf 编译安装...make install 2、Ant 安装 tar -zxvf apache-ant-1.9.2-bin.tar.gz mv apache-ant-1.9.2/ /usr/local/ant 3、编译前的准备... 4、findbugs 安装 tar -zxfv findbugs-2.0.2.tar.gz mv findbugs-2.0.2/ /usr/local/findbugs 5、cmake 编译安装...,64bit的机子跑编译好的包跑不了。...否则编译hadoop-auth 会提示错误: vi /hadoop-2.2.0/hadoop-common-project/hadoop-auth/pom.xml org.mortbay.jetty
前言因为我是做Linux开发的,所以平时接触到的源码编译是必须的一个过程。...因为编译环境不一样,所以编译的工具链也不一样,例如ARM架构的Linux平台和x86架构的Linux平台,编译的工具链就不一样,如果新手没有经验,一旦出问题就会一团乱麻。.../configuremakemake install然后重新执行: ....清理:make clean && make distclean5.重新配置编译安装SDL2:....重新编译ffmpeg即可sudo apt-get install libsdl2-dev libsdl2-2.0-0 libsdl2-image-dev libsdl2-image-2.0-0 libsdl2
找到安装nginx的源码根目录,如果没有的话下载新的源码 http://nginx.org tar xvzf nginx-1.3.2.tar.gz 查看ngixn版本极其编译参数 /usr/local/...nginx/sbin/nginx -V 进入nginx源码目录 cd nginx-1.3.2 以下是重新编译的代码和模块 ..../nginx/conf/nginx.conf test issuccessful 平滑重启nginx /usr/local/nginx/sbin/nginx -s reload 查看ngixn版本极其编译参数.../usr/local/nginx/sbin/nginx -V 这是我重新编译的代码: .
; } else { PRINT_FATAL("tcsetpgrp failed: %s", strerror(errno)); return 1; } } 可以直接把这段代码注释掉,然后重新编译...3 Summary 将重新编译后的 tini 替换原来镜像的 tini 即可。
下面,来自己动手改造下,过程如下: 源码包: mysqld_exporter-0.10.0.tar.gz go1.8.3.linux-amd64.tar.gz 步骤: cd /root/ tar xf...mysqld_exporter-0.10.0.tar.gz -C ./ yum install git -y tar xf go1.8.3.linux-amd64.tar.gz -C /usr/local...18行,修改后: var slaveStatusQueries = [2]string{"SHOW SLAVE STATUS", "SHOW SLAVE STATUS"} 然后执行 make ,注意的编译时候最后会提示
gcc-c++ openssl-devel ncurses-devel ant maven protocolbuf findbugs cmake 1、Protobuf 编译安装...install 2、Ant 安装 tar -zxvf apache-ant-1.9.2-bin.tar.gz mv apache-ant-1.9.2/ /usr/local/ant 3、编译前的准备...、findbugs 安装 tar -zxfv findbugs-2.0.2.tar.gz mv findbugs-2.0.2/ /usr/local/findbugs 5、cmake 编译安装...,64bit的机子跑编译好的包跑不了。...hadoop2.2.0-src mvn clean install –DskipTests 目前的2.2.0 的Source Code 压缩包解压出来的code有个bug 需要patch后才能编译
pecl.php.net/get/swoole-1.9.22.tgz 2、解压:tar zxvf swoole-1.9.22.tgz 3、扩展模块:cd swoole-1.9.22 && phpize 4、编译安装
编译和重新编译 SQL Server 有一个高效的算法,可查找用于任何特定 SQL 语句的现有执行计划。...SQL Server 将重新使用找到的任何现有计划,从而节省重新编译 SQL 语句的开销。如果没有现有执行计划,SQL Server 将为查询生成新的执行计划。...由此我们要做的就是如何高效的应用执行计划的缓存,又在合适重新编译执行计划,来提高查询效率,减少性能的损耗。 ...如图,当执行架构名称不同的时候会引发重新编译,执行计划缓存不能复用,这个问题需要开发人员注意,经常会有不自觉添加或者减少架构名称的举动。...总结: 本篇系统的介绍了编译查询的流程,以及产生缓存、复用缓存、重新编译等具体内容。
本文原文发布在Medium上,汇集了关于软件工程的经验和原则:开发过程、API设计和职业发展。...正是读及文章最后一个原则促使我整理了本文,写给自己的同时,也相信本文可以重新定义学校课程中的软件工程,重新定义其他迫急解惑的心智模型。 开发过程 代码不仅仅是用来执行的。...除了正在监视的度量之外,软件对用户和世界的总体影响是什么?是否有超出价值观的副作用?你如何解决这些问题,同时保持软件的有用性? API设计 你的API有用户,因此它有用户体验。...文档不应该讲解软件如何工作,它应该展示如何使用软件。展示端到端工作流程的代码示例,为每一个常见功能和API的关键功能展示代码示例。...因此,人们使用自己正在生产的产品的想法被称为“吃自己的狗粮”,随着苹果、微软等公司的推动,软件行业采用这个短语来表示公司使用自己的产品。
但对于软件公司来说一旦使用方法2开发出来一套工作流系统,那么后期实施和客户使用就很方便了,所以也有不少工作流系统提供了“表单设计器”,来在线设计工作流表单。 ...我们换一个角度,来看方法1和方法2的区别,发现他们的区别是: 方法1,需要开发、编译和部署程序; 方法2,不需要重新编译程序; 方法2的优势很明显的,但是它必须先开发一个“表单设计器”,这些设计器有的简单...///////////////////// //填充数据 MyWebForm.Instance.AutoSelectIBForm(this.Controls); 但这不是本文的主题,本文是说如何不重新编译程序...呵呵,通过该方法,是不是实现了你的“无需重新编译在线修改表单”的功能?如果开发一个工具,让用户以图形化的方式来修改表单信息,那就是真正的在线表单修改工具了。...------------------------------------------------------ 相关链接: LJMM平台( Linux +Jexus+MySQL+mono) 上使用MySQL
Prifiler:捕捉事件类型为SP和T-SQL的事件(Starting、Stmtcompleted、Recompile、Completed、CacheInsert、CacheHit、CacheMiss)可以找到重新编译的原因
本文是我学习课程《软件设计之美》的学习总结第三部分,分享面向对象的三个特点和五个设计原则的理解。 1 面向对象的三个特点 我们都知道面向对象有三个重要的特点:封装、继承 和 多态。...Robert Martin在《敏捷软件开发:原则、模式与实践》中对单一职责的定义是:“一个模块应该有且只有一个变化的原因”,到了《架构整洁之道》中定义变为了:“一个模块应该对一类且仅对一类行为者(actor...开放封闭原则 软件实体(类、模块、函数)应该对扩展开放,对修改封闭。 对扩展开放,就是新需求应该用新代码实现。 对修改封闭,就是不修改已有的代码。 实现开放封闭原则的前提是:在软件内部留好扩展点。...3 小结 本文我们学习了面向对象的三个特点和SOLID五个设计原则,它们可以指导我们如何设计可以应对长期变化的软件。 SRP,一个类的变化来源应该是单一的。...最后,感谢郑晔老师的这门《软件设计之美》课程,让我受益匪浅!我也诚心把它推荐给关注Edison的各位童鞋! 参考资料 郑晔,《软件设计之美》(极客时间课程,推荐订阅学习)
本文是我学习课程《软件设计之美》的学习总结第五部分,记录对于DDD领域驱动设计方法的整体理解。...上一篇:体会软件设计之美(4) 1 关于领域驱动设计 前面温习了软件设计的分析步骤、设计原则与模式,道(理念、原则)已经有了,需要一个具体的术(落地方法论)来实践了,这就需要我们掌握一个好的设计方法。...但当下软件变得越来越复杂,一种新的设计方法逐渐脱颖而出,它虽然不是万能药,但是对大部分人面对的业务场景而言,都是能够有效应对的。...直到后来微服务的兴起,我们发现微服务的难度主要在于如何有效划分微服务,这时DDD又被重新请上了舞台中央,因为它是一个恰当的指引。所以,大家被逼着硬着头皮开始啃DDD了。...最后,感谢郑晔老师的这门《软件设计之美》课程,让我受益匪浅!我也诚心把它推荐给关注Edison的各位童鞋!
造成以上错误的原因是Hadoop的二进制安装包中没有snappy支持,需要手工重新编译。 操作过程: 1....准备编译环境 yum install svn yum install autoconf automake libtool cmake yum install ncurses-devel...编译安装snappy # 用root用户执行以下命令 tar -zxvf snappy-1.1.1.tar.gz cd snappy-1.1.1/ ....编译安装protobuf # 用root用户执行以下命令 tar -zxvf protobuf-2.5.0.tar.gz cd protobuf-2.5.0/ ....参考: http://www.micmiu.com/bigdata/hadoop/hadoop-snappy-install-config/ http://www.linuxidc.com/Linux
所谓模型,它也被称之为抽象,它是软件的核心内容,理解模型就可以帮助我们从高维度建立对软件的整体认知。...所谓接口,它是用户与软件交互的入口,约定了软件通过怎样的方式对外暴露自己的能力。 所谓实现,它指软件提供的模型和接口在内部是如何实现的。...模型才是一个软件最核心的部分,如果模型变了那么软件就不再是原来的样子,甚至偏离了方向。接口反映的是模型,因此模型和接口都应该是较为稳定的,而实现则会随着软件的演化和发展而不断地调整。...软件也一样,软件做的再好,没有人用也不能算是好软件。好的软件,也一定是需要研究人性的。帮助程序员这个群体偷一点懒的软件,就是这些经过高度封装的中间件/组件 又或者是 更高级的编程语言。...构建了自己对于实现的主线也就是软件的结构图之后,还需要去了解这个软件的关键技术,即到底是什么玩意儿让这个软件的实现与众不同?
如果说学习数据结构和常用算法可以帮助我们写出较为高效的代码,那么学习软件设计相关知识则可以帮助我们写出较为高质量的代码,本文是我学习课程《软件设计之美》的学习总结的第一部分。 1 什么是软件设计?...软件设计,是一门关注长期变化的学问,它不是开发者的入门课。作为初级程序员,往往首选的追求是实现一个具体的功能,不能看到一个软件长期的变化。 设计是为了让软件在长期更容易适应变化。...模型和规范,二者相辅相成,它们构成了软件设计的主体内容。 换句话说,软件设计=模型+规范。 ?...在软件设计中的第一步,就是要考虑好分解的粒度,不合适的粒度会为软件日后的演化埋下很多坑。因此,我们常常听说软件设计需要首先“分离关注点”。 ?...4 小结 本文我们学习了什么是软件设计,一句话概括,软件设计=好的模型+适合的规范。软件设计的第一步是分离关注点,分离的关注点越多越好,粒度越细越好。
Windows 写个bat脚本放在同一目录下 @echo off java -jar apktool.jar 两个文件放在同一目录,后将该目录添加到您的环境变量系统PATH变量中 Linux...使用 d 或者 decode 命令 apktool d apk文件路径 apktool decode apk文件路径 // 效果一样 反编译 apktool d apk文件路径 o 解压目录 2.重新打包...使用 b 或 build apktool b 解压后的项目目录 -o 新apk的名字 // 重新打包生成的 apk 需要签名才能安装 3.拓展反编译的配置 #-api, --api-level <API...no-res 不反编译资源,保留 resources.arsc 为原来的样子,如果你只是需要修改代码,此配置会加快反编译和重新打包的速度。...#-s, --no-src 不反编译代码,即不处理 dex文件。如果你只是需要修改资源,此配置会加快反编译和重新打包的速度。
领取专属 10元无门槛券
手把手带您无忧上云