linux编译

xen-4.1.2+Linux-3.1.2源码编译安装

社会主义新天地 提交于 2020-02-09 03:10:50
xen-4.1.2+Linux-3.1.2源码编译安装 以下所有命令均在CentOS6.2系统上操作。 下载xen源码 wget http://bits.xensource.com/oss-xen/release/4.1.2/xen-4.1.2.tar.gz 安装必备软件包 yum groupinstall "Development Libraries" yum groupinstall "Development Tools" yum install transfig wget texi2html libaio-devel dev86 glibc-devel e2fsprogs-devel gitk mkinitrd iasl xz-devel bzip2-devel pciutils-libs pciutils-devel SDL-devel libX11-devel gtk2-devel bridge-utils PyXML qemu-common qemu-img mercurial libidn-devel yum -y install glibc-devel.i686texinfo libuuid-devel iasl python-lxml yum -y install openssl openssl-devel yum -y install ncurses

Linux操作系统学习第二篇博客

坚强是说给别人听的谎言 提交于 2020-02-09 01:37:29
1、vim的三种模式 vim是从vi发展过来的一款文本编辑器 (1)安装vim sudo apt-get install vim (2)三种模式 1 | 命令模式 打开文件后,默认进入命令模式(打开文件命令:vi + 文件名)。 2 | 编辑模式 需要输入一些命令,切换到编辑模式。 3 | 末行模式 在末行模式下可以输入一些命令。 4 | 有关关系 < 1 > 命令模式 加冒号 进入末行模式 加w 完成保存文字 自动切换到命令模式 < 2 > 命令模式 加冒号 进入末行模式 按两下ESC键进入(或者执行一个末行命令) 命令模式 2、vi中的光标位置删除、撤销操作 (1)移动光标 1 | h : 向左移动 2 | j: 向下移动 3 | k: 向上移动 4 | l: 向右移动 5 | 数字0:移动到本行首部 6 | $: 移动到本行尾部 7 | gg: 移动到当前文件开头 8 | G:移动到当前文件尾部 9 | 行数 + G: 移动到指定的行数 (2)删除操作 1 | 删除光标后面字符: x(小写) 2 | 删除光标前面字符: X(大写) 3 | 删除光标所在光标的单词: dw ( 如果光标在此单词的中间,则删除光标后面的单词相关内容 ) 4 | 删除光标到行首的字符串: d + 数字0 5 | 删除光标到行尾的字符串: D (或者d + $) 6 | 删除光标当前行: dd 7 |

Linux下编译并使用miracl密码库

孤街浪徒 提交于 2020-02-09 01:29:53
参考: Linux下编译并使用miracl密码库 MIRACL用户手册:https://wenku.baidu.com/view/d542f2ed0975f46527d3e1dc.html 具体过程。 1、 从 https://github.com/miracl/MIRACL/archive/master.zip 下载github下的项目源码。我下载的是.zip压缩包,名字为MIRACL-master.zip。 2、 建立一个目录miracl用来放置源码 mkdir miracl 3、 将下载成功的MIRACL-mater.zip放到上述创建的miracl目录 cd /path/to/miracl cp /path/to/MIRACL-mater.zip ./ 4、 解压zip包,把所有独立的文件都放在这个目录,即将所有非目录的文件解压在当前目录下 unzip -j -aa -L MIRACL-master.zip 5、 用shell文件编译。 由于树莓派采用的是arm版处理器,用linux-arm(参考linux64改造的,代码在文末) 。执行如下命令 bash linux-arm 6、 运行源码提供的示例代码 pk-demo,测试一下是否编译成功。 ./pk-demo 这个程序是个简单检验,迪菲-赫尔曼密钥交换(Diffie–Hellman key exchange

Linux下静态编译Qt程序

萝らか妹 提交于 2020-02-09 00:59:01
一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的。会提示缺少……库文件之类的错误。这就是动态编译的结果。 但是如果我们想编译一个程序,这个程序在发给别人后,他们可以直接打开,而不需要特别地去先安装Qt库,那就需要采用静态编译了。 在Linux下如何静态编译Qt程序呢? 首先需要先安装静态编译的Qt,也就是静态编译Qt程序首先是需要一个静态编译安装的Qt 1、下载源安装程序,如 qt-x11-opensource-src-4.5.1.tar.gz 2、解压到某一目录 3、cd 进入解压后的目录,命令: ./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.5.1_static 参数-static 指的是要采用静态编译Qt的方法 参数-release指的是只编译release版本的库 参数-qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg 是更好确定Qt编译出的程序能在目前不知的系统下运行。 参数

Linux/Ubuntu下 静态编译Qt程序

穿精又带淫゛_ 提交于 2020-02-09 00:56:10
一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的。会提示缺少……库文件之类的错误。这就是动态编译的结果。 但是如果我们想编译一个程序,这个程序在发给别人后,他们可以直接打开,而不需要特别地去先安装Qt库,那就需要采用静态编译了。 在Linux下如何静态编译Qt程序呢? 首先需要先安装静态编译的Qt,也就是静态编译Qt程序首先是需要一个静态编译安装的Qt 1、下载源安装程序,如 qt-x11-opensource-src-4.5.1.tar.gz 2、解压到某一目录 3、cd 进入解压后的目录,命令: ./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.5.1_static ./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr

C++ 的编译、运行和链接

隐身守侯 提交于 2020-02-08 14:37:30
C++ 的预备知识 涉及的内容 C++ 作为编译型语言 C/C++ 的编译器 制作和调用库 利用 GDB 进行调式 总结 涉及的内容 此系列会在开头说明本篇博客涉及的内容,以方式各位使用,如下: 简要介绍编译型语言和解释型语言 C/C++ 的编译器 gcc/g++ 的用法 使用 gcc/g++ 制作静态库和动态库 使用 gdb 进行调试 C++ 作为编译型语言 计算机上可以运行的只有机器指令(由 01 组成),其他任何语言编写的程序(包括汇编)都要翻译成对应的机器指令才能运行,C++ 属于编译型语言。 编译语言有很多,常见的高级语言都是编译语言,如 Java、C\C++、C# 等,特点是运行前要经过一系列的处理,通常将这一过程称为 “编译” ,编译成功后会生成对应的二进制文件,也就是可执行文件(您的程序)。 与之对应的解释型语言有: Python、JavaScript、HTML 等,特点是运行时在进行 “解释” ,即每执行到一条语言就进行解释成对应的机器指令。 大家知道的编译语言速度快,快的地方其实在于“一次编译,多次运行”,而解释型语言则是每次运行时都要进行 “解释” 所以才慢了些。 但是实际开发过程解释型语言较编译型语言快得多喔, 原因也是因为编译型语言运行前要进行编译,当工程较大时,编译可以耗费大量时间,不适合调试,另外学习编译语言的成本和难度较解释型要大。 编译语言的运行

go语言编译为可执行文件

情到浓时终转凉″ 提交于 2020-02-08 10:31:02
安装go后,我们一般会设置好GOROOT和GOPATH环境变量 在windows下,打开cmd,执行go env 命令查看环境变量 注意到: GOROOT,GOPATH的路径,专门看GOOS : 如果:GOOS=windows说明我们生成windows的可执行文件,如果是GOOS=linux则是生成linux的可执行文件。 我们可以通过set命令来更改生成平台的的可执行文件: set GOOS=windows 确定生成平台的可执行文件后,切换到src目录下,执行go install 命令生成可执行文件: 在src目录下我们有一个ServerGo项目文件夹。 例如 go install ServerGo, 没有报错的话,在GOPATH目录下生成bin和pkg目录,在bin目录下生成可执行文件,exe。 来源: CSDN 作者: 阿朵彬 链接: https://blog.csdn.net/panjunnn/article/details/104038547

LINUX下载编译OpenAL Soft

我是研究僧i 提交于 2020-02-08 09:37:09
下载 https://kcat.strangesoft.net/openal-releases/ 解压 tar xf openal-soft-1.20.1.tar.bz2 cd openal-soft-1.20.1/ 编译 BUILD_LIBS=${HOME}/build_libs export PATH=${BUILD_LIBS}/bin:${PATH} export PKG_CONFIG_PATH=${BUILD_LIBS}/lib/pkgconfig:${PKG_CONFIG_PATH} cd build cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=${BUILD_LIBS} .. 来源: CSDN 作者: 柳鲲鹏 链接: https://blog.csdn.net/quantum7/article/details/104136755

linux GCC 编译多个.c/.h文件

妖精的绣舞 提交于 2020-02-08 06:02:41
基本认识: #include <xxx>:首先去系统目录中找头文件,如果没有在到当前目录下找。像标准的头文件 stdio.h、stdlib.h等用这个方法。 #include "xxx":首先在当前目录下寻找,如果找不到,再到系统目录中寻找。 这个用于include自定义的头文件,让系统优先使用当前目录中定义的。 单个.c源文件:test.c 1 /*=====test.c=======*/ 2 #include <stdio.h> 3 4 int main(void) 5 { 6 printf("Hello, world!\n"); 7 return 0; 8 } gcc -g test.c -o test -g:为了GDB调试加入的参数; ./test 多个源文件: main.c hello.h hello.c 1 /*=====main.c=======*/ 2 #include <stdio.h> 3 4 #include "hello.h" 5 6 int main() 7 8 { 9 10 hello(); 11 12 return 0; 13 14 } 1 /* ===hello.h======= */ 2 void hello(); 1 /*====hello.c=======*/ 2 #include <stdio.h> 3 #include "hello.h"

Linux中使用GDB调试NS2

别说谁变了你拦得住时间么 提交于 2020-02-08 03:44:09
在使用ns2过程中,避免不了要修改或者添加一些模块,对C++代码进行改动。编写好自己的功能模块以后,进行编译执行。但通常不会这么容易通过,经常会出现编译可以通过,但执行是会出错。比较常见的是“段错误”,因指针内容为空。这个时候,需要用调试器对源代码进行调试,来精确定位错误发生在哪里。下面记录一些我比较常用的调试功能,GDB在linux中常用的调试器,功能比较全,我用到的也不多。以后会继续更新。 首先要让我们的ns2支持gdb的调试,需要对makefile进行修改。(以ns2.29为例)加上-g3选项。 .cc.o: @rm -f $@ $(CPP) -g3 -c $(CFLAGS) $(INCLUDES) -o $@ $*.cc .c.o: @rm -f $@ $(CC) -g3 -c $(CFLAGS) $(INCLUDES) -o $@ $*.c 修改完上面的内容后,重新编译。然后可以在任意目录下执行:gdb ns。此时就可以进行调试了,介绍几个我常用的命令。 (gdb) r test.tcl //执行指定的test.tcl文件 (gdb) b udp.cc:55 //在udp.cc文件的第55行打断点 (gdb) c //执行到断点处,继续往下执行 (gdb) bt //查看调用栈。觉得这个挺有用,可以查看整个仿真过程的调用过程,对理解仿真步骤和执行过程很有帮助 (gdb)