关于动态库静态库的一些事

来源:互联网 发布:软件开发进度表模板 编辑:程序博客网 时间:2024/05/17 08:34

首先先对编译器中关于对原文件,头文件,库等编译相关的理解。其次理解静态库和动态库的。最后在windows和Linux下编译静态和动态库,以及相应的使用。

  • 编译器编译源文件,头文件,库。以及常常出现的问题和原因等(对于各种语言,IDE都是相通的,c/c++,java, oc,VS,gcc,eclipse(设置库等),xcode设置等都类似)
  • 动态库和静态库
  • 在了解前两节的基础上,在实际的工作中怎么用,windows,linux下的生成和使用。

编译器编译源文件,头文件,库。以及常常出现的问题和原因等。

编译器要编译源文件,头文件,当然要将源文件头文件置入工程项目中(头文件不一定,头文件不一定放进工程中,只要保证源文件include的时候能找到就好,编译的是源文件。include的作用其实是将头文件的东西替换到源文件。所以工程中可以不要包含头文件,但是要保证能找到头文件位置,编译也能成功。就像gcc中没有gcc 头文件,只是gcc源文件。头文件放到VS工程中,只是为了能方便的管理,主要的还是源文件。),这样编译器才能将其编译,否则相应的错误就是当使用某个原文件的方法时会提示未定义。
使用源文件,要放进工程,这样才能编译。
使用头文件时,除了要放进工程(有的可以不用,如在工程的根目录下时)1要include,2要能找到头文件的路径,3头文件中的方法要有具体实现(要么直接有源文件,要么有库)。所以根据以上三点,找不到头文件,找不到实现,都能很好的去解决。首先检查是否include,其次该头文件是否能找到相应的路径(VS中设置的是头文件包含,包含目录,当然如果在include中具体指定路径#include “../../xxx.h”也是一种方法),最后再检查是否有相应的实现。
关于库文件。 首先也要有相应的指定库名。 其次要有指定相应的路径。 这个和头文件并不是完全的一回事。具体见第三节。

动态库和静态库

在了解前两节的基础上,在实际的工作中怎么用,windows,linux下的生成和使用

以上两节参见:C++静态库与动态库

(我确实很懒,其次可能写的也比较乱)

0 0