Unity具有跨平台特性,所以一般若是要使用c++分为四种情况:Windows、Android、MacOS以及IOS,对应使用生成的库文件后缀分别为”.dll”、”.so”、”.bundle”、”.a”;
1、 库文件生成
1.1 DLL
在Windows下生成dll的方式非常简单,一般来说,对我们这种写代码的来说都会安装vs,直接在vs中新建相应的类库,然后添加你需要的cpp文件和头文件即可。我试了此种方法,但是用vs生成的会包含一些我不需要的头文件等,而我又类似于有洁癖,不想在我需要的代码之外看见其他的,并且,我懒得去除0.0 所以换了一种生成方式——CMake。
度娘了一下使用方法,各种分文件夹、各种list文件,一阵头疼。我需要编译的文件不多,也就五六个“cpp”,六七个“.h”,所以直接放在了一个文件夹下。层级为:
Root——bin //放置生成dll
|— build//放置cmake生成的工程
|— lib//放置源码
|—|—CmakeLists.txt
|— CMakeLists.txt
Root下CMakeLists.txt的写法:
cmake_minimum_required(VERSION3.0)
PROJECT (Your_Project_Name)
ADD_SUBDIRECTORY(lib)
第一行版本,第二行设置自己的工程名,第三行加入lib。
Lib下CmakeLists.txt的写法: