zoukankan      html  css  js  c++  java
  • linux下静态链接库和动态链接库

      关于链接库的知识,网上太多资料了,但是并不代表我很熟悉。今天遇到了

    一个问题,就是由于静态链接库和ubuntu系统不兼容导致的,虽然花了点时间才搞定

    但是,其中暴露的问题也不少。

      没有区分好静态链接库和动态链接库的概念和使用方法。

    链接库,顾名思义,就是一些函数代码的集合库,主要有静态链接库和动态链接库两种

    二者的不同点在于代码被载入的时刻不同。 静态库的代码在编译过程中已经被载入可

    执行程序,因此体积较大。共享库的代码是在可执行程序运行时才载入内存的,在编译

    过程中仅简单的引用,因此代码体积较小。

      静态链接库生成命令:假如程序只有一个test.c文件

    gcc –c test.c
    ar cr libtest.a test.o

      使用:测试文件app.c

    gcc –c app.c
    gcc -o app app.o -L. –ltest

      动态链接库生成:

    gcc -c -fPic hello.c

    gcc -shared -fPCI -o libmyhello.so hello.o 

      使用: gcc main.c -L. -lmyhello

      参考文档:

     1 http://blog.csdn.net/shreck66/article/details/49583057

     2 http://www.cnblogs.com/changefuture/archive/2011/12/22/2297460.html

       3 http://blog.csdn.net/luozirong/article/details/42522817

  • 相关阅读:
    python线程同步
    闭包、装饰器
    python中的return返回值
    常用内建函数
    python迭代器与生成器
    python基础之数据类型
    VS生成解决方案时报错: Your project does not reference ".NETFramework,Version=v4.5"
    Unity 低版本打开高版本项目
    关闭应用程序的所有子窗体
    按钮接收 Enter 键
  • 原文地址:https://www.cnblogs.com/dylancao/p/7717823.html
Copyright © 2011-2022 走看看