日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Clion生成动态链接库.dll

發(fā)布時間:2024/10/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Clion生成动态链接库.dll 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
今天研究如何生成動態(tài)鏈接庫.dll文件糾結(jié)了好久。在保證代碼文件不報錯的情況下,可能要注意幾個方面。 一·項目結(jié)構(gòu)要完整。 Clion項目生成后會和其他編程工具不同的地方在于會有一個CMakelist文件和cmake-build-debug文件夾。 如果沒有Cmakelist可以使用importProject重新導(dǎo)入項目:https://blog.csdn.net/superSmart_Dong/article/details/98982679 如果編譯不通過,在代碼保證正確的情況下設(shè)置Setting->Build,Execution,Deployment->Cmake->Generation Path ,設(shè)置選中為你的cmake-build-debug。 二.編寫好Cmakelist文件。 在代碼確保沒報錯的前提下,只要寫好Cmakelist文件就可以進行Build,生成鏈接庫了。 add_library(DEMOProject SHARED Afile.cpp Afile.hpp)有這句話就能夠生成出dll動態(tài)鏈接庫了add_library(<name> [STATIC | SHARED | MODULE][EXCLUDE_FROM_ALL][source1] [source2] [...]) 該指令的主要作用就是將指定的源文件生成鏈接文件,然后添加到工程中去,[STATIC | SHARED | MODULE]指定生成鏈接庫的類型,指定STATIC,SHARED,或者MODULE參數(shù)用來指定要創(chuàng)建的庫的類型。STATIC庫是目標(biāo)文件的歸檔文件,在鏈接其它目標(biāo)的時候使用。如果什么都不寫那么就會生成.a文件,也就是Linux的靜態(tài)鏈接庫文件。add_executable(DEMOProject Afile.cpp Afile.hpp)這是添加可執(zhí)行文件的,如果把add_libarary寫成這個命令,而你寫的代碼中也沒有WinMain則會報找不到Winmain,編譯出來的文件也不是鏈接庫文件。會報類似下面的錯誤。undefined reference to 'Winmain' DemoProject.exe:error:Id return 1 exit status make[2]: *** [test_cpu] Error 1 CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/test.dir/all' failed make[1]: *** [CMakeFiles/test.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2

總結(jié):Clion生成動態(tài)鏈接庫.dll文件,確保CMakelist文件和cmake-build-debug正確,然后確保add_library正確,類型為SHARED,之后Run->build,就慢慢等,build完了一般就會在cmake-build-debug文件夾下生成.dll文件了。項目太大,生成時間太長,自己最好新建一個小項目試試行不行。

總結(jié)

以上是生活随笔為你收集整理的Clion生成动态链接库.dll的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。