Welcome 微信登录

首页 / 操作系统 / Linux

Linux下静态库的使用与创建

Linux下静态库的使用与创建

Linux下类库主要有静态库和动态库两种库。其中,静态库在程序连接的时候会自动的连接到程序里,所以一但编译完成,静态库也就不需要了。静态库通常以.a结尾。例如:libutil.a libuuid.a libz.a等。而动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。通常以.so结尾。如:libz.so。因此,静态库相对于共享库来说有更高的效率但是也要消耗更多的空间。值得注意的是,如果既有静态库又有动态...
Linux声音设备编程实例初学

Linux声音设备编程实例初学

由于这些文件不是普通的文件,所以我们不能用ANSIC(标准C)的fopen、fclose等来操作文件,而应该使用系统文件I/O处理函数(open、read、write、lseek和close)来处理这些设备文件。ioctl()或许是Linux下最庞杂的函数,它可以控制各种文件的属性,在Linux声音设备编程中,最重要的就是使用此函数正确设置必要的参数。下面我们举两个实际的例子来说明如何实现Linux下的声音编程。由于此类编程涉及到系统设备的读写,所以,很多...
适合阅读的Linux内核

适合阅读的Linux内核

比较值得学习的Linux内核源代码:Linux 1.0:【原因】这是Linux的第一个正式版,相对Linux0.11而言,Linux1.0支持网络,每个进程配有4GB地址空间,支持 SCSI 驱动,支持虚拟内存、虚拟控制台、文件符号链接、作业控制,支持CD-ROM,支持动态链接库,能运行 X-Window 程序,可以实现数学协处理器的软件模拟等等。最重要的一点是,内核源代码包不大,适合阅读。(若是现在的2.6版本或其它高版本就免了吧,上千万行的代码,不适合...
QT4编译不成功的一些原因总结及编译方法

QT4编译不成功的一些原因总结及编译方法

网上有太多QT编译不过的问题,最近经过无数次编译后总结出大部分QT编译不过的原因是在configure的时候就已经搞错了一、QT的configure,如果不带-prefix参数时默认安装路径为/usr/local/Trolltech/Qt-X.X.X,所以如果你的QT目录下在此目录下,则不能直接使用不带参数的configure二、如果带了使用configure -prefix,但不指定目录,假设QT目录为/home/crob/QT/qt-4.4.2,则此时...
Linux下删除文本文件中的所有空行

Linux下删除文本文件中的所有空行

在许多时候,我们的文本文件中会出现许多空行,这些都是我们不想要的,大多时候我们会选择手工一行一行的删除,这样显然太麻烦。况且当文件的行数很多的时候,其麻烦程度是我们不能忍受的。所以我们需要这样一个工具,可以达到删除所有空行的目的,并且最好还能一次处理多个文件。由此我在Linux下写了一个这样的工具,支持一次处理多个文件,并且在给出的文件不存在的情况下给出提示。当然为方便期间,我们可以将该shell程序赋予可执行权并放入/bin下,这样我们就可以像使用she...
web服务器lighttpd1.4.18代码详细分析

web服务器lighttpd1.4.18代码详细分析

lighttpd是目前非常流行的web服务器,很多流量非常大的网站(如youtube)使用的就是lighttpd,它的代码量不多,但是设计巧妙,效率高,功能完备(这是它将来能取代Apache的重要因素),编码风格优美, 是学习网络编程,熟悉http服务器编写的良好范例.在我初学网络编程的时候,就是看的lighttpd的源码进行学习,在其中学到了不少的技巧.我打算将这些写出来与别人分享,可能开始比较杂乱,也不会作完全的分析,因为很多部分的代码我也没有看过,写...
Linux环境Utuntu中java环境变量配置和eclipse配置启动

Linux环境Utuntu中java环境变量配置和eclipse配置启动

本人最近想验证下偶的talend组件可否跨Windows平台运行, 几经周折,才算搞定基础环境。看看网路上对在Linux环境特别是Utuntu下的最新版JDK及eclipse安装配置解决办法不是太多,或是太长篇大论,学会做一件简单的事情对一个人的信心有多大影响。为解初学者的痛苦,特将此小成果与从分享。(另外,虽然有办法让Utuntu在sourcelist中找到eclipse自动安装配置,但偶觉得初学者还是多动动手比较好)1. jdk安装及java环境变量的...
深入了解C#程序语言

深入了解C#程序语言

在微软领导 C# 开发的Anders Hejlsberg,曾负责编写Turbo Pascal系统,并且是Delphi语言开发团队的首席架构师。他在接受Computerworld的深入采访中,阐述了C#开发的历史,以及对未来程序语言发展趋势的看法,并透露了一些即将发布的C#4,以及函数语言F#。Hejlsberg认为函数式编程正在成为一种成长性的趋势,有很大发展空间,C#也深受其影响,F#的独特之处就是以强大的行业集成开发工具和平台为后盾,使得F#成为其它函...
Linux下编译osip2和eXosip2

Linux下编译osip2和eXosip2

今天闲来无事,准备在Linux下看看sip的东西。从网上下了osip2和eXosip2的源码,才没有多久,怎么都到3.1.0版本了。如果是需要系统安装,则按照标准程序(解压,Makefile,make和make install),先osip,后eXosip即可。但我不想安装到系统,只想做一些应用开发,所以需要仔细看一下。由于eXosip需要osip库的支持,所以还是主要还是看eXosip的配置文件。读了config.log文件,发现原来只要osip和eXo...
Linux学习笔记之Shell 的重要性

Linux学习笔记之Shell 的重要性

Shell 基础Linux Shell 的角色就如翻译者一般。 Sehll 就像是一个壳,它介于用户和操作系统(Kernel)中间,负责将用户的命令解释为操作系统可以接受的低级语言,同时将操作系统响应的信息以用户了解的方式来显示。 在登录到退出系统期间,用户输入的每个命令都会经过解释及执行,而这个负责的机制就是 Shell。 一般用户的命令可分为:程序和 Shell 内置命令。 要判断一个命令属于 Shell 内容命令还是程序,可以利用 find 命令。若...
<< 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 >>