下载luajit: https://github.com/LuaJIT/LuaJIT; 解压后,cd到src目录,命令行输入魔法:mingw32-make; 此时在src目录生成了lua51.dll 等二进制文件; 在src同目录下新建example文件夹,再在example文件夹中新建lib文件夹,将lua51.dll拷贝进去 example文件夹中新建demo.cpp,
比较与建议 易用性:CMake和XMake的脚本语言(CMake脚本和Lua)比NMake的Makefile更直观,学习曲线平缓。 跨平台支持:CMake和XMake支持Windows、Linux、macOS等多平台,NMake仅限Windows。 功能丰富度:CMake因其20多年的发展(始于2000年,Kitware数据),功能全面且插件丰富;XMake虽年轻,但迭代迅速,已支持包管理和复杂构建。
核心是xmake.lua文件 add_rules("mode.release", "mode.debug") set_languages("c++23") target("mod") set_kind("shared") add_files("src/mod/mod.mpp", {public = true}) add_files("src/mod/mod.cpp") add_defines("MY_LIBRARY_EXPORTS") target("cpp_with_moduledeps") set_kind("binary"...
find_library(LUA lua5.1 /usr/lib /lib) find_package: 查找并加载外部项目的设置。命令格式为: find_package(<package>[version][EXACT][QUIET][MODULE][REQUIRED][[COMPONENTS][components...]][OPTIONAL_COMPONENTS components...][NO_POLICY_SCOPE]) 使用示例为: find_package(Protobuf) find_path: 查找...
target_link_libraries(dbsrv msg_proto xconfig net ${REDIS_LIBRARY} ${MYSQL_LIBRARY} ${LUA_LIBRARY} -ldl) target_link_libraries 将给定的库链接到一个目标上。 target_link_libraries(<target> [item1 [item2 [...]]] [[debug|optimized|general] <item>] ...) ...
target_link_libraries(dbsrv msg_proto xconfig net ${REDIS_LIBRARY} ${MYSQL_LIBRARY} ${LUA_LIBRARY} -ldl) target_link_libraries将给定的库链接到一个目标上。 target_link_libraries(<target> [item1 [item2 [...]]] [[debug|optimized|general] <item>] ...) ...
CMake `find_package...使用这些变量在 CMake 代码中设置包含和库路径。...如果一些配置,无法在 on_load 中过早配置,那么都可以在 on_config 中去配置它。...wrapper 支持在 CMakelists 中去调用 xrepo 集成 C/C++ 包添加内置的 github 镜像加速 pac 代理文件, xmake g --proxy_pac=github_mirror....
然后在这个后端上做工作实现自己需要的逻辑;如果是xmake那可以直接用lua脚本写,xmake中像batchcmds这种...
使用范例: find_path(LUA_INCLUDE_PATH lua.h ${LUA_INCLUDE_FIND_PATH}) if(NOT LUA_INCLUDE_PATH) message(SEND_ERROR "Header file lua.h not found") endif() 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. (14)find_library 命令 命令语法:find_library(<VAR> name1 [path1 path2 …...
Premake:这是一个基于 Lua 的构建配置工具,它可以生成多种构建系统的项目文件,如 Make、Visual Studio 和 Xcode。 Bazel:这是 Google 开发的构建和测试工具,它提供了高度的可扩展性和性能。 每个工具都有其优点和缺点,选择哪个工具取决于项目的具体需求。