c/c++语言开发共享将旧的makefile转换为CMake

我正在尝试将旧的makefile代码转换为CMake。 你能帮助我吗? 这是我目前陷入困境的部分。 我不知道如何将这些参数传递给编译器。

COMPILE_FLAGS = -c -m32 -O3 -fPIC -w -DSOMETHING -Wall -I src/sdk/core ifdef STATIC OUTFILE = "bin/test_static.so" COMPILE_FLAGS_2 = ./lib/ABC.a else OUTFILE = "bin/test.so" COMPILE_FLAGS_2 = -L/usr/lib/mysql -lABC endif all: g++ $(COMPILE_FLAGS) src/sdk/*.cpp g++ $(COMPILE_FLAGS) src/*.cpp g++ -fshort-wchar -shared -o $(OUTFILE) *.o $(COMPILE_FLAGS_2) rm -f *.o 

谢谢!

    让我们尝试将Makefile语法映射到CMake

     COMPILE_FLAGS = -c -m32 -O3 -fPIC -w -DSOMETHING -Wall -I src/sdk/core 

    该声明直接映射到:

     SET( COMPILE_FLAGS "-c -m32 -O3 -fPIC -w -DSOMETHING -Wall" ) INCLUDE_DIRECTORIES( src/sdk/core ) 

    条件的类型:

     ifdef STATIC # Do something else # Do something else endif 

    以这种方式翻译成CMake:

     OPTION(STATIC "Brief description" ON) IF( STATIC ) # Do something ELSE() # Do something else ENDIF() 

    要修改默认编译标志,可以CMAKE__FLAGS_RELEASE设置变量CMAKE__FLAGS_RELEASECMAKE__FLAGS_DEBUG等。

    最后,可执行文件的编译需要您使用ADD_EXECUTABLE命令,这在许多CMake教程中都有说明。

    在任何情况下,我建议您参考在线文档以获取更多详细信息,因为它非常具有说明性和完整性。

    需要了解更多c/c++开发分享将旧的makefile转换为CMake,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享将旧的makefile转换为CMake相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/980506.html

      (0)
      上一篇 2021年12月14日
      下一篇 2021年12月14日

      精彩推荐