- 新建项目mylib,新建h和cpp文件,同时新建一个lib目录来准备生成dll
- 在项目的CMakeLists.txt文件下增加ADD_SUBDIRECTORY(lib)
- 在新建的lib目录下新建CMakeLists.txt文件
- 在其中加入
SET (LIBHELLO_SRC ../erase.h) //后面那个参数填你自己需要构建dll的文件
ADD_LIBRARY (mylib0713 SHARED ${LIBHELLO_SRC}) //第一个参数为你需要构建的dll的名字,第二个为类型
INSTALL(TARGETS mylib0713 RUNTIME DESTINATION D:/mylib) //指定dll的生成目录这里目录是D:/mylib,注意linux下是LIBRARY DESTINATION windows下是 RUNTIME DESTINATION
SET_TARGET_PROPERTIES(mylib0713 PROPERTIES LINKER_LANGUAGE C) //为你的dll设置linker
在项目当前目录下执行cmake . 注意后面有个点。然后进入lib目录下执行make install,如果没mingw32-make.exe的名字的话那么就应该是ming32-make.exe install就会在你指定的目录下生成dll了
我用的是jetbrain的clion,这是我项目的目录图,其中黑色的是VS2012的解决方案,如果有用的可以用