1、创建静态库的过程:
1)写源程序
math.c view.c
2)编译源程序
gcc -c math.c ==> math.o
gcc -c view.c ==> view.o
3)创建静态库文件
ar -r libmyku.a math.o view.o
2、使用静态库文件
1)写程序,调用库中的函数
testku.c
2)编译
gcc -c testku.c ==> testku.o
3)连接
第一种方式:
gcc testku.o libmyku.a ==> a.out
第二种方式:
gcc testku.o -l myku ==> a.out
依赖环境变量LIBRARY_PATH
连接过程:将库名myku变成文件名libmyku.a,然后在LIBRARY_PATH环境变量指定的路径找到文件libmyku.a,最后进行连接。
第三种方式:
gcc testku.o -l myku -L .
不需要依赖环境变量LIBRARY_PATH,用-L指定查找库文件的路径
3、创建共享库
1)写源程序
math.h math.c view.c
2)编译源程序
gcc -c -fpic math.c ==> math.o
gcc -c -fpic view.c ==> view.o
3)连接并生成共享库文件
gcc -shared math.o view.o -olibmysku.so ==>libmysku.so
4、使用共享库
1)写使用程序
testku.c
2)编译
gcc -c testku.c
3)连接
gcc testku.o -lmysku -L. ==> a.out
4)运行
a.out
依赖环境变量LD_LIBRARY_PATH
a.out在运行期间调用库中的函数时,需要先找到共享库文件,查找库文件的方式是搜索LD_LIBRARY_PATH指定的路径
project
src
bin
lib
doc
练习:
写几个函数(考虑打印菱形,一个打印空心,一个打印实心),将这此函数做成静态库文件,并调用它,再做成共享库文件,并调用它。
分享到:
相关推荐
在CUDA编程中,有时我们需要将CUDA源代码编译成静态库文件,以便在其他项目中进行链接和使用。本文将详细讲解如何使用CUDA的编译器nvcc将`.cu`文件编译为静态库文件,并探讨相关的编译选项和注意事项。 首先,我们...
UC编程技术总结是一种编程技术的总结,这种技术涉及到静态库和共享库的生成、使用、连接等过程,同时也涉及到内存管理、虚拟内存管理技术等方面。 一、静态库和共享库 静态库和共享库是两种不同的库类型。静态库...
1. **安装库**:将`.egg`文件移动到Python的`site-packages`目录下,或者使用`easy_install`命令安装,如`easy_install rl4uc_pwdemars-0.0.1-py3.8.egg`。 2. **导入库**:在Python脚本中,你可以通过`import`语句...
UC/GUI图形库,详细讲解了UC/GUI库函数使用,注意事项UCGUI3.90版源码有如下几点新的变化. 1.这个版本的UCGUI提供了模拟器的源码 2.还有JPEG图版支持 3.ListView控件支持等等;
2. **任务管理**:uc/osII允许创建多个并发运行的任务,每个任务都有独立的堆栈,并通过信号量、消息队列等方式进行通信。 3. **内存管理**:它提供了动态内存分配和释放功能,通过内存池实现高效的内存分配。 4. ...
uc3844.sdf
元件库的创建和维护通常需要专业人员,以保证符号的标准化和一致性。 **封装库**,则包含了对应元件在物理PCB上的布局形状和引脚位置信息。封装库中的每一个条目被称为“封装”,它定义了元件在PCB上的实际占位面积...
《UC/GUI在UC/OS下实现图像显示的深度解析》 UC/GUI与UC/OS的结合,为嵌入式系统提供了强大的图形用户界面(GUI)支持...通过深入理解和熟练掌握这两个库,开发者可以创建出极具吸引力和功能性的嵌入式系统用户界面。
开发者可以解压并研究这些文件,以了解如何在自己的Cortex-M3项目中集成和使用uC_GUI,创建定制化的图形用户界面,并利用uCos进行任务管理和系统调度。 总的来说,这个压缩包提供了在Cortex-M3微控制器上构建嵌入式...
这是一个图形界面查看工具,它能够帮助开发者直观地查看和测试uC-GUI创建的GUI资源。通过这个工具,你可以实时预览窗口、控件和动画效果,调整布局和样式,检查颜色和透明度设置,从而确保在实际设备上的显示效果与...
UC GUI 3.9.0源码是一款专为嵌入式系统设计的图形用户界面库,它基于C语言编写,提供了丰富的图形元素和交互功能。虽然版本相对较旧,但其简洁的设计和良好的可移植性使其成为学习和开发嵌入式GUI应用的一个不错选择...
而uC-Modbus则是针对微控制器(uC)实现的Modbus协议栈,它为开发者提供了简单且高效的方式来实现Modbus通信。本文将对uC-Modbus进行深入探讨,包括其源码结构、工作原理以及如何在实际项目中应用。 首先,让我们...
- 多种显示模式:支持静态、动态和半动态显示模式,以适应不同性能需求。 - 内置字符库:内置ASCII字符集,简化文本显示。 - 图形处理能力:提供点画、线画、填充等功能,支持基本图形绘制。 - 背光控制:内置...
总之,"keil下的uc os LPC2200"是一个涵盖硬件平台选择、RTOS移植、通信协议实现和多任务管理的综合学习主题。通过这一过程,开发者不仅能掌握具体的编程技巧,还能深入了解嵌入式系统的运行机制,为未来更复杂的...
标题“联想 UC10 UC20 驱动”表明我们要讨论的是专为联想UC10和UC20设备设计的驱动程序。这些驱动可能是针对不同硬件组件,如显卡、声卡、网卡、键盘、鼠标或其他内置或外接设备。 联想作为全球知名的PC制造商,其...
在音乐领域,特别是数字音乐的使用中,不同的平台和应用可能会采用特定的音频格式来存储和播放音乐。本文将深入探讨“网易云音乐缓存uc,uc!格式转码为mp3”的相关知识点,以及如何在手机和电脑上进行转换。 标题中...
本篇文章将深入探讨如何使用STM32驱动UC1698U液晶显示屏,特别是针对240x160分辨率的LCD160240屏幕,同时介绍UC1698U的工作原理和STM32通过FSMC接口进行通信的细节。 UC1698U是一款高性能、低功耗的LCD控制器/驱动...
C51代码具有高效性和可移植性,使得开发人员能够轻松地编写和调试与UC1705交互的代码。 驱动程序是连接硬件和软件的关键,对于UC1705来说,驱动程序主要负责以下任务: 1. 初始化:设置UC1705的控制寄存器,以正确...
这份文档可能涵盖了如何导入UC/OS II源码,设置编译选项,创建和调试任务,以及如何利用BC4.5的调试功能进行问题排查等内容。建议仔细阅读这份文档,它将是你在BC4.5环境下驾驭UC/OS II的重要参考资料。 总之,BC...
总的来说,静态网页模板和CSS是构建商务网站的关键工具,它们提供了快速创建专业外观网站的途径。通过熟练掌握这两项技术,开发者可以高效地创建出满足客户需求的、具有吸引力的网站,同时保持良好的用户体验和一致...