1. 程式人生 > >交叉編譯環境下靜態庫的製作與測試

交叉編譯環境下靜態庫的製作與測試

1、編寫my_print.c原始檔,內容如下:

#include <stdio.h>

void cout(const char * message)
{
    fprintf(stdout, "%s\n", message);
}

2、編寫my_lib.h標頭檔案,內容如下:
 

#ifndef __MY_LIB_H__
#define __MY_LIB_H__

void cout(const char *);

#endif

3、編寫test_static_lib.c原始檔,內容如下:
 

#include <stdio.h>
#include "my_lib.h"


int main(int argc, char *argv[])
{
    cout("This is a static lib test!\n");

    return 0;
}

4、編譯my_print.c原始檔:
arm-hisiv500-linux-gcc -c my_print.c

      

5、歸檔目標檔案,得到靜態庫。

arm-hisiv500-linux-ar crv libmylib.a my_print.o

6、生成ELF檔案:
arm-hisiv500-linux-gcc test_static_lib.c  -L. -lmylib -o test_static_lib

7、將ELF檔案拷貝至開發板,執行