关于sdk的理解

现在我进来的这个公司的部门是做公司的内部算法是sdk封装的,类似于java的sdk一样,主要就是用于提供给程序员一些release的lib库,用于保障公司内部算法库的封装,提供给其他部门是用,既然是release的库 ,那么其就要跨平台,,支持多个平台使用,开发啊这些库的人nb,,我以为自己一辈子都做不到写api,封装sdk,提供我写的库去给其他程序员使用,但现在可能变成现实,因为做的是sdk封装,而且是算法的,sdk_face......因此没有正不正确,只有好于不好,因此我们做完的sdk都是需要测试的,我们的sdk会通过一个算法评测系统进行评测,而这个算法评测系统之前的架构是基于python和spark的大数据后台系统搞的,需要重构,因此啊,我要做这个,,,,,

综上上:sdk开发就是开发出 一些release的lib库,供其他程序员去使用,(但是开发出的lib库是需要进行算法评测的,)也涉及到sdk的版本管理,release的更新,同时哦由于跨平台,因此需要对硬件本身进行了解,适配,我们基于cppbuild去做跨平台开发

开发的主要为算法的动态库和静态库,对于开发跨平台的库,我们需要一个编译工具,利用这个工具去编译 库,生成各个平台的可以使用的库,

sdk开发环境:cppbuild-----生成各个平台的sdk(静态lib和动态lib),以及源码包一个

sdk进行检测:使用算法评测工具,自动化测试

关于系统:

git上存放的是源码,开发者使用

devcenter上存放的 是编译好的动态库/静态库,程序员使用

及sdk开发者开发的代码经算法测评后放在git上,之后由devcenter选择对应的代码进行编译成对应平台的sdk,下载即可使用,

sdk源码经devcenter进行测试以及build编译,最终保证release

——-------------------------------________________________________________________________

1.linux mount挂载命令

Linux mount命令是经常会使用到的命令,它用于挂载Linux系统外的文件。

sudo mkdir /mnt/nfs

sudo mount -t nfs 10.107.2.1:/shared/Ubuntu-16.04 /mnt/nfs 

创建文件夹,并将linux系统外的 文件挂在到此文件夹内 

2.linux ln建立软链接命令 

Linux ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

 创建/usr/local/toolchains软链接
    $ cd /usr/local
    $ sudo ln -s /mnt/nfs toolchains

将/mnt/nfs下的东西软连接到usr/local/toolchains下

猜你喜欢

转载自blog.csdn.net/strivenoend/article/details/94594031