zoukankan      html  css  js  c++  java
  • 嵌入式开发入门心得记录

    1.首先要做好方案架构的设计,如算法,功能,工具,等进行分类

    2.如何编译动态库和静态库,库的作用是什么?

      静态库在编译时直接编辑进主函数中,文件较大,动态库是在执行时动态加载库文件,共享动态库可以提供给他人使用,也就是开放自己的API函数

      如何编译动态库呢?

      假设已经有了文件test1.c test2.c main.c

     1 gcc test1.c test2.c -shared -fPIC -o libtest.so
     2 
     3 使用动态库
     4 
     5 gcc main.c -L. -ltest -o a.out
     6 
     7 (
     8 
     9 -L : 表示需要库的路径
    10 
    11 -l:表示需要库的名称,如libtest.so,名称则为test
    12 
    13 )
    14 
    15 (ps:执行a.out时有可能提示找不到libtest.so文件,这时需要把库文件放入到/lib等目录下,或者添加环境变量LD_LIBRARY_PATH,包含有库文件的路径即可)

      如何编译静态库?

     1 gcc -c test1.c test2.c
     2 
     3 ar -r libtest.a test1.o test2.o
     4 
     5 使用静态库
     6 
     7 gcc main.c -static -L. -ltest -o a.out
     8 
     9 (
    10 
    11 -static:可强制编译时使用静态库,如果不使用这个参数,而静态库与动态库同名的话,会优先使用动态库
    12 
    13 )

    3.如何是封装API?

      做c开发时,API即是通过.h 和.c实现函数,供其他用户或函数进行调用,可以封装成动态库或者静态库,也可以和主函数一起直接编译。

    4.熟悉观察者模式

  • 相关阅读:
    time模块
    Spring注入方式及注解配置
    Spring注入值得2种方式:属性注入和构造注入
    MySQL命令行登陆,远程登陆MySQL
    通过XMLHttpRequest和jQuery两种方式实现ajax
    Linux常用命令
    ASP.NET 打包下载文件
    从用户浏览器输入url到用户看到页面结果的过程,发生了什么事情?
    冒泡排序的三种实现
    字符串编码C#
  • 原文地址:https://www.cnblogs.com/edan/p/9838686.html
Copyright © 2011-2022 走看看