从我之前的博文当中,大家应该大概了解了linux下的函数库究竟是一个什么样的东西。linux下的函数库其实就像windows中的dll文件,里面包含了程序运行所需要的函数。

其实无论是我们使用linux系统本身自带的库,还是使用第三方源代码编译所产生的函数库,无论有意识还是无意识,我们在linux下使用c语言进行编程,其实多多少少都会和函数库进行接触。

将源代码编译成函数库之后,我们想要使用相关的函数,只要带上相关的函数库一起编译或运行就好,而不必须每次都将函数库的源代码进行编译——特别是当函数库的源代码十分庞大的时候。

我们之所以需要创建自己的函数库,其实也是因为在一个工程里面,我们用到了过多的自编代码文件。为了使用方便,我们不妨将这些代码文件都编译成一个函数库。

在codeblock中为我们创建自己的函数库提供了一个十分方便的方法:

(1)打开codeblock 选择File->New->Project创建静态函数库工程.

(2)点击Next

(3)输入文件名,然后点击next

(4)点击finish

5)将新建工程里面包含的main.c删除

(6)右击工程名选择Add file将自己写的代码文件加入到工程当中

出现如下画面,点击ok就好

这是添加完成后的画面

(7)点击build,成功后会出现如下画面

(8)打开工程文件夹,可以看到编译好后生成的函数库

9)如果编译失败或是没有生成函数库怎么办在前面的步骤当中,我是直接将放置在桌面的代码直接导入的,但是我在使用codeblock过程中有个非常奇怪的地方:当你不是在/home/<用户名>文件夹中建立工程的话,并且你的代码没有放在/home/<用户名>文件夹当中,你的编译很可能不会产生任何文件。所以,直接将工程建立在/home/<用户名>文件夹当中就好(比如说我的用户名为linfen,我就将工程建立在/home/linfen文件夹下),并且所有所需的代码也要放在工程目录下

Linux c codeblock的使用(四):创建自己的静态函数库的更多相关文章

  1. LINUX编程学习笔记(十四) 创建进程与 父子进程内存空间

    1什么是进程:进程是一个执行中的程序 执行的程序: 代码->资源->CPU 进程有很多数据维护:进程状态/进程属性 所有进程属性采用的一个树形结构体维护 ps  -a//所有进程 ps - ...

  2. 《Linux内核分析》 第四节 扒开系统调用的三层皮(上)

    <Linux内核分析> 第四节 扒开系统调用的三层皮(上) 张嘉琪 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com ...

  3. Linux系统运维笔记(四),CentOS 6.4安装 MongoDB

    Linux系统运维笔记(四),CentOS 6.4安装 MongoDB 1,下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6 ...

  4. Linux内核分析 - 网络[十四]:IP选项

    Linux内核分析 - 网络[十四]:IP选项 标签: linux内核网络structsocketdst 2012-04-25 17:14 5639人阅读 评论(1) 收藏 举报  分类: 内核协议栈 ...

  5. Linux下安装SVN,仓库创建,用户权限管理

    Exported from Notepad++           Linux下安装SVN,仓库创建,用户权限管理 1.SVN安装 Ubuntu系统下安装:sudoapt-getinstallsubv ...

  6. 【Linux】进程的结构,创建,结束,以及程序转化为的进程的过程

    本文内容: 1.进程的结构 2.程序转化为进程的过程 3.进程的创建 4.进程的结束 背景知识: 1.进程是计算机中处于运行的程序的实体 2.进程是线程的容器 3.程序本身只是指令,数据以及组织形式的 ...

  7. 【Linux】多线程同步的四种方式

    背景问题:在特定的应用场景下,多线程不进行同步会造成什么问题? 通过多线程模拟多窗口售票为例: #include <iostream> #include<pthread.h> ...

  8. 阿里云服务器Linux CentOS安装配置(四)yum安装tomcat

    阿里云服务器Linux CentOS安装配置(四)yum安装tomcat 1.yum -y install tomcat  执行命令后,会帮你把jdk也安装好 2.tomcat安装目录:/var/li ...

  9. DevExpress XtraReports 入门四 创建 Web 报表

    原文:DevExpress XtraReports 入门四 创建 Web 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这 ...

随机推荐

  1. 关于IIS的4月26日笔记

    常用命令: 31. regedit.exe----注册表 48. msconfig.exe---系统配置实用程序  80. services.msc---本地服务设置 93. regedit.exe- ...

  2. Gatling实战(二)

    在上一篇实战讲解了Gatling的用例,不过还没涉及到性能方面的内容,其实用例中的最后一句就和性能有关了 setUp(scn.inject(atOnceUsers(1)).protocols(http ...

  3. 《一些神奇的JS功效》

    1: async 异步回调 (ES6) async function test(){ console.log("hello wolrd"); } test().then(funct ...

  4. SQL语句——exists和in区别

    表结构及数据 user表 order表 in select * from table A where id in (xxxxxxxxxxx):满足条件的数据会被查出来: 先查询子查询的表,然后将内表. ...

  5. zeros()和ones()和eye()

    python--zeros函数和ones函数 使用numpy.zeros,numpy.ones,numpy.eye等方法可以构造特定的矩阵 >>>from numpy import ...

  6. 场景:如果一个select下拉框的值被选中,其他两个字段值的校验也生效

    $("#operationType").change(function(){ if(this.value==1){ $('[name="assigneeCardType& ...

  7. MemoryStream请求与接收

    //流请求 static void Main(string[] args) { Console.WriteLine("Hello World!"); //Console.ReadL ...

  8. Summary on deep learning framework --- Theano && Lasagne

     Summary on deep learning framework --- Theano && Lasagne 2017-03-23 1. theano.function outp ...

  9. mongodb在ubuntu下无法打开的问题

    通过查询大概知道了是非正常关闭,mongod.lock的事,ubuntu的mongod.lock在/var/lib/mongodb中,删除之后即可重新打开.

  10. css浮动与清除浮动

    css浮动 首先,我们要知道,css中块级元素在页面中是独占一行的,自上而下排列,也就是我们所说的流,通常称为标准流. 以div为例,div是块级元素,如下: 可以清楚地看到,div是独占一行的,di ...