BES代码打包成库文件说明

文章介绍了在BES开发中如何打包代码为库文件以保护敏感信息,通过修改makefile生成.a库文件,只对外提供库文件和头文件,增强了代码安全性。在使用库文件时需包含对应的头文件并正确配置makefile。
摘要由CSDN通过智能技术生成

生成库文件的目的

在BES软件开发过程中, 如果我们需要保护某些关键代码不被其他开发者访问或修改, 可以将这些代码打包成库文件, 打包成库文件可以防止恶意攻击者通过反编译等手段获取我们的源代码. 可以保护代码中的某些敏感信息, 将这些信息隐藏在库文件中, 而不是直接写在源代码中, 从而提高了项目的安全性

生成库文件的例子

  1. 比如目录结构为这样, src目录中放源码.c文件, inc目录中存放开放给用户的.h头文件, 这里例子src目录中有一个文件源码文件code_file.c文件, 需要打包成打包成库文件.a文件, 发放代码的时候只提供.a库文件和.h头文件.
    文件目录结构目录结构
    目录结构

  2. 这里演示的src目录中的code_file.c文件中有两个接口提供给库外面调用
    code_file文件

  3. 修改makefile
    这里lib文件是需要使用makefile文件来生成, 在文件夹中的makefile中加入以下字符
    LIB_NAME := lib_test
    $(LIB_NAME)-y := $(obj_c:.c=.o) $(obj_s:.S=.o) $(obj_cpp:.cpp=.o)
    obj-y += $(LIB_NAME).a
    LIB_NAME代表意思是将要生成的lib的名字, 这里LIB_NAME相当于一个变量, 名字可以任意自定义
    修改makefile

  4. 编译工程
    编译工程, 编译命令时候将GEN_LIB宏打开, 或者makefile下直接打开GEN_LIB, 以下是makefile下直接修改打开
    修改makefile 2

  5. 生成lib
    工程编译完成之后, 源码路径下会多出一个lib文件夹, 里面会有一个刚刚生成的.a文件
    生成库文件

  6. 删除源码文件夹src文件夹, 只保留头文件和库文件, 并将上面步骤生成LIB的宏开关 GEN_LIB 关掉

  7. 库文件中接口调用, 需要在使用库接口的位置将头文件包含进来, 这里比如
    #include “code_file.h”
    然后在需要使用的地方调用函数即可
    调用库函数
    需要注意的是使用的地方的makefile需要新增头文件的包含, 不然编译会提示找不到文件的错误
    新增包含

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小的代码里面挖呀挖呀挖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值