当前位置: 首页 > news >正文

凡科网怎么修改网站合肥建设工程信息网官网

凡科网怎么修改网站,合肥建设工程信息网官网,wordpress采集去掉多余链接火车头,网站建设奕网情深目录 1 库的概念 2 库的知识 3 静态库特点 4 静态库 4.1静态库创建 4.2 编译生成目标文件 4.3 创建静态库 hello 4.4 查看库中符号信息 4.5 链接静态库 5 共享库特点 6 共享库 6.1 共享库创建 6.2 编译生成目标文件 6.3 创建共享库 common 6.4为共享库文件创建…目录 1 库的概念 2 库的知识 3 静态库特点 4 静态库 4.1静态库创建 4.2 编译生成目标文件  4.3 创建静态库 hello 4.4 查看库中符号信息 4.5 链接静态库 5 共享库特点 6 共享库 6.1 共享库创建 6.2 编译生成目标文件 6.3 创建共享库 common 6.4为共享库文件创建链接文件     6.5 编写应用程序 6. 6 编译test.c 并链接共享库libcommon.so 6.7 加载共享库 6.8 如何查看使用了什么库 掌握库的概念 静态库 静态库创建 链接静态库 共享库 共享库创建 链接共享库 加载共享库 1 库的概念 库是一个二进制文件包含的代码可被程序调用 标准C库、数学库、线程库…… 库有源码可下载后编译也可以直接安装二进制包 /lib   /usr/lib 2 库的知识 库是事先编译好的可以复用的代码。 在OS上运行的程序基本上都要使用库。使用库可以提高开发效率。 Windows和Linux下库文件的格式不兼容 Linux下包含静态库和共享库 3 静态库特点 编译(链接)时把静态库中相关代码复制到可执行文件中 程序中已包含代码运行时不再需要静态库 程序运行时无需加载库运行速度更快 占用更多磁盘和内存空间 静态库升级后程序需要重新编译链接 4 静态库 4.1静态库创建 确定库中函数的功能、接口编写库源码hello.c       #include stdio.h void hello(void) {printf(“hello world\n”);return; }4.2 编译生成目标文件  $ gcc -c hello.c -Wall 4.3 创建静态库 hello $ ar -rsv libhello.a hello.oar 参数 c 禁止在创建库时产生的正常消息 r 如果指定的文件已经存在于库中则替换它 s 无论 ar 命令是否修改了库内容都强制重新生成库符号表 v 将建立新库的详细的逐个文件的描述写至标准输出 q 将指定的文件添加到库的末尾t 将库的目录写至标准输出 4.4 查看库中符号信息 查看库中符号信息$nm libhello.ahello.o:0000000 T helloU putsnm显示指定文件中的符号信息-a 显示所有符号4.5 链接静态库 编写应用程序test.c #include stdio.hvoid hello(void); int main(){hello();return 0; }编译test.c 并链接静态库libhello.a $gcc -o test test.c -L. -lhello $ ./test hello world//-L库的路径 //-l库的文件名5 共享库特点 编译(链接)时仅记录用到哪个共享库中的哪个符号不复制共享库中相关代码 程序不包含库中代码尺寸小 多个程序可共享同一个库 程序运行时需要加载库 库升级方便无需重新编译程序 使用更加广泛 6 共享库 6.1 共享库创建 确定库中函数的功能、接口 编写库源码hello.c  bye.c #include stdio.h void bye(void) {printf(“bye\n”);return; }#include stdio.h void hello(void) {printf(“hello world\n”);return; }6.2 编译生成目标文件 $ gcc -c -fPIC hello.c bye.c -Wall-fPIC:生成与位置无关的代码与静态库代码大小不一样符号信息不一样 6.3 创建共享库 common $ gcc -shared -o libcommon.so.1 hello.o bye.o 可以不加.1 加.1方便创建软链接 6.4为共享库文件创建链接文件     $ln -s libcommon.so.1 libcommon.so 符号链接文件命名规则 lib库名.so6.5 编写应用程序 #include stdio.h #include “common.h” int main() {hello();bye();return 0; }6. 6 编译test.c 并链接共享库libcommon.so gcc -o test test.c -L. -lcommon 6.7 加载共享库 执行程序如果出现这个错误说明没有找到共享库(非常常见的错误 $ ./test ./test: error while loading shared libraries: libcommon.so cannot open shared object file : No such file or directory添加共享库的加载路径的方法 $export LD_LIBRARY_PATH$LD_LIBRARY_PATH:. $./test hello world       bye! 为了让系统能找到要加载的共享库有三种方法 1 把库拷贝到/usr/lib和/lib目录下        cp libcomom.so /usr/lib 2 在LD_LIBRARY_PATH环境变量中添加库所在路径   使用export添加路径上方采用此方法但是推荐使用绝对路径(但是再打开一个窗口又找不到 下面介绍第三种方法 $export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/home/linux/Desktop//$LD_LIBRARY_PATH:加这个用于防止把之前定义的环境变量冲掉 3 添加到bashrc $ vim ~/.bashrc 最后位置添加 export LD_LIBRARY_PATH/home/linux/Desktop $ source ~/.bashrc 4 添加/etc/ld.so.conf.d/*.conf文件执行ldconfig刷新 6.8 如何查看使用了什么库 $ ldd [可执行文件] 缺少库会提示 练习 静态库和动态库都有什么特点他们的区别是什么 静态库特点 编译(链接)时把静态库中相关代码复制到可执行文件中 程序中已包含代码运行时不再需要静态库 程序运行时无需加载库运行速度更快 占用更多磁盘和内存空间 静态库升级后程序需要重新编译链接 动态库特点 编译(链接)时仅记录用到哪个共享库中的哪个符号不复制共享库中相关代码 程序不包含库中代码尺寸小 多个程序可共享同一个库 程序运行时需要加载库 库升级方便无需重新编译程序 使用更加广泛 他们的区别 静态库的代码复制到最终可执行文件中而动态库的代码由操作系统在运行时加载。 静态库使得可执行文件较大动态库使得可执行文件较小。 静态库的独立性更强动态库的更新更灵活。 静态库适用于独立部署的应用程序动态库适用于共享给多个应用程序使用的场景。
http://www.yutouwan.com/news/197913/

相关文章:

  • 教育行业网站北京企业网站开发公司哪家好
  • 高端自适应网站seo技术是干什么的
  • 营销网站类型企业所得税怎么算2021
  • 网站制作+app+公众号如何管理网站页面设计
  • 重庆网站推广报价免费背景图片素材网
  • 哪里做百度网站做网站维护一工资多少钱
  • app网站开发小程序综合商城网站建设
  • 做网站的流程分析-图灵吧WordPress批量删除无用标签
  • 家具网站首页模板重庆建站公司
  • 福田做棋牌网站建设哪家技术好承揽合同和建设工程合同的区别
  • 建设网站都需要什么网站推广和网络推广
  • 做网站前端要会什么wordpress和公众号对接
  • 个人介绍网站内容wordpress黑糖主题
  • 医院如何做网站策划移商网站建设
  • 东莞网站优化哪家好wordpress相关推荐
  • 网站设计网站公司小程序开发需要多少钱
  • 怎样做免费抽皮肤的网站网站建设市场
  • 陕西的网站建设公司排名成都网站建设零一
  • 大连企业建站系统模板wordpress 安装平台
  • 建设银行网站适用浏览器wordpress 手机管理
  • 手机端网站建设备案深圳龙岗租房子多少钱一个月
  • 网站按钮代码做招聘网站的怎么让人注册简历
  • wordpress 做手机站您的网站对百度设置了ip封禁
  • 河南天丰建设工程有限公司网站paypal外贸门户网站
  • 做任务可以给钱的网站网站开发规划书
  • 学做网站 为了熊掌号网站建设合同 费用
  • 东道 网站建设小广告发布
  • 谁有网站推荐一下好在线网站建设诚信经营
  • 网站特效网大连建设工程信息网华宇凤凰城东侧市政管网配套工程
  • 承德市网站开发大连企业建设网站