xmake v2.6.4 发布,大量包管理特性改进

2022-03-08
阅读 5 分钟
2.1k
它使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。

xmake v2.6.2 发布,新增 Linux 内核驱动模块构建支持

2021-12-17
阅读 12 分钟
2.9k
它使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。

xmake v2.5.9 发布,改进 C++20 模块,并支持 Nim, Keil MDK 和 Unity Build

2021-10-31
阅读 12 分钟
2.9k
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。

xmake v2.5.8 发布,新增 Pascal/Swig 程序和 Lua53 运行时支持

2021-10-12
阅读 9 分钟
1.7k
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。

Xrepo:一个现代化的跨平台 C/C++ 包管理器

2020-11-25
阅读 6 分钟
2.2k
它基于 xmake 提供的运行时,但却是一个完整独立的包管理程序,相比 vcpkg/homebrew 此类包管理器,xrepo 能够同时提供更多平台和架构的 C/C++ 包。

xmake v2.3.8 发布, 新增 Intel C++/Fortran 编译器支持

2020-10-18
阅读 6 分钟
1.7k
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。

xmake 官方入门课程上线: Xmake 带你轻松构建 C/C++ 项目

2020-10-09
阅读 1 分钟
1.9k
Xmake 是一个基于 Lua 的轻量级跨平台 C/C++ 构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt 而言,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门 C/C++ 项目的编译开发,提供一站式跨平台编译、运行、调试、打包、安装等操作,能够让大家把更多的精力集中在实际的项目开发上。

xmake v2.3.7 发布, 新增 tinyc 和 emscripten 工具链支持

2020-09-18
阅读 6 分钟
2.2k
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。

xmake v2.3.6 发布, 新增fortran编译支持

2020-07-29
阅读 4 分钟
2k
这个版本重点对其他语言的支持做了一些改进,比如新增了fortran的编译支持,zig语言的实验性支持,另外对golang/dlang增加了第三方依赖包支持以及交叉编译支持。

xmake从入门到精通1:安装和更新

2019-11-11
阅读 3 分钟
4.5k
xmake是一个基于Lua的轻量级现代化c/c++的项目构建工具,主要特点是:语法简单易上手,提供更加可读的项目维护,实现跨平台行为一致的构建体验。

xmake 新增对 Qt 编译环境支持,用自己最喜爱的编辑器去开发 Qt 程序

2018-05-31
阅读 3 分钟
3.5k
最近给xmake新增了对 Qt SDK 环境的支持,现在我们完全可以脱离 Qt Creator 进行 Qt 应用程序的开发,甚至配合 vscode/idea/sublime/vim 等编辑器+xmake 插件(xmake-vscode, xmake-idea, xmake-sublime ...),用户完全可以切换到自己最常用的编辑器环境中去开发和构建 Qt 程序,例如这样:

xmake v2.1.9版本发布,增加可视化图形菜单配置

2018-02-05
阅读 4 分钟
2.2k
此版本主要增加xmake f --menu实现用户自定义图形菜单配置,界面风格类似linux的make menuconfig: 更多使用说明,请阅读:文档手册。 项目源码:Github, Gitee. 新特性 添加del_files()接口去从已添加的文件列表中移除一些文件 添加rule(), add_rules()接口实现自定义构建规则,并且改进add_files("src/*.md", {rule = ...

使用xmake检测编译器特性支持

2017-08-08
阅读 3 分钟
3k
如果我们要写跨平台的c/c++代码,很多时候需要处理由于不同编译器对c/c++各个标准支持力度不同导致的兼容性问题,一般通常的解决办法是:自己在代码中通过宏去判断各个编译器的版本、内置宏、标准库宏、__has_feature等来检测处理。

不同编译器对预编译头文件的处理

2017-08-01
阅读 3 分钟
3.8k
现在的大部分c/c++编译器都是支持预编译头的,例如:gcc,clang,msvc等,用于优化c++代码的编译速度,毕竟c++的头文件如果包含了模板定义的话,编译速度是很慢的,如果能够吧大部分通用的头文件放置在一个header.h中,在其他源码编译之前预先对其进行编译,之后的代码都能重用这部分预编译头,就可以极大程度上减少频繁...

xmake v2.1.5版本新特性介绍

2017-07-31
阅读 9 分钟
2.6k
2.1.4版本之前,xmake对于包管理,是通过在项目内置pkg/zlib.pkg方式,来检测链接的,虽然也支持自动检测,但是查找功能有限,并且内置的各个架构的二进制库到项目,对git并不是很友好。

[转]:无需手写任何代码,直接快速编译源代码

2017-01-09
阅读 13 分钟
3.3k
最近给xmake增加了一个新特性,对于一份工程源码,可以不用编写makefile,也不用编写各种make相关的工程描述文件(例如:xmake.lua,makefile.am, cmakelist.txt等)

[转]:xmake 工程描述语法更新

2016-11-17
阅读 2 分钟
2.7k
最近对xmake.lua的工程描述语法进行了增强,现已可以同时支持两种不同语法风格。 set-add描述风格 key-val描述风格 set-add描述风格 这种是xmake经典的设置风格,例如: {代码...} 优势:控制灵活,可以根据各种条件,通过if-then进行灵活的条件编译,可以驾驭各种高度复杂的配置需求。 劣势:作用域控制不明显,需要手...

[转]:xmake 描述语法和作用域详解

2016-10-28
阅读 4 分钟
2k
xmake的工程描述文件xmake.lua虽然基于lua语法,但是为了使得更加方便简洁得编写项目构建逻辑,xmake对其进行了一层封装,使得编写xmake.lua不会像些makefile那样繁琐

[转]:线程局部存储tls的使用

2016-09-28
阅读 4 分钟
3.3k
线程局部存储(Thread Local Storage,TLS)主要用于在多线程中,存储和维护一些线程相关的数据,存储的数据会被关联到当前线程中去,并不需要锁来维护。。

[转]:tbox中数据库的使用

2016-09-18
阅读 7 分钟
3.1k
TBOX目前支持sqlite3、mysql两种关系型数据库(需要链接对应的libsqlite3.a和libmysql.a),并对其接口进行了封装,使用更加的方便简洁并且只需要换个url,就可以随时切换成其他数据库引擎,而不需要修改接口。

[转]:手写数字识别系统之倾斜矫正

2016-08-01
阅读 1 分钟
5.2k
这种方法对于像素较多的图像的处理效果明显,而且实现简单快速,但是对于那些已经经过提取得单一数字图像并不适用,因为此时的图像一般较小,且笔画较细,由于所需信息太少统计后的结果并不正确。

[转]:手写数字识别系统之细化图像

2016-07-31
阅读 1 分钟
3.8k
骨架,可以理解为图象的中轴,例如一个长方形的骨架是它的长方向上的中轴线;正方形的骨架是它的中心点;圆的骨架是它的圆心,直线的骨架是它自身,孤立点的骨架也是自身。

[转]:手写数字识别系统之图像分割

2016-07-30
阅读 4 分钟
7.5k
并且为了写这个项目,我当时还特地写了一整套神经网络库,从图像处理开始到最后的识别过程,没有使用任何第三方库,都是从0还是写起也没有用到opencv啊什么的。

[转]:手写数字识别系统之数字提取

2016-07-30
阅读 3 分钟
6.6k
所谓数字分割就是指将经过二值化后的图像中的单个数字区域进行提取的过程。数字分割在数字识别中是一个必不可少的关键步骤,只有能够将数字进行准确的提取,才能将其一一识别。

[转]:xmake工程描述编写之选择性编译

2016-07-24
阅读 3 分钟
2.8k
xmake 提供了一些内置的条件判断api,用于在选择性编译时,获取到一些工程状态的相关信息,来调整编译逻辑。。 例如:is_os, is_plat, is_arch, is_kind, is_mode, is_option is_mode 我们先拿最常用的is_mode来讲讲如何使用,这个api主要用来判断当前的编译模式,例如平常编译配置的时候,会执行: {代码...} 来编译deb...

[转]:如何通过xmake进行交叉编译

2016-07-22
阅读 1 分钟
3.4k
xmake 提供了方便灵活的交叉编译支持,大部分情况下,都不需要配置很复杂的toolchains前缀,例如:arm-linux- 什么的 只要这个toolchains目录满足如下结构(大部分的交叉工具链都是这个结构): {代码...} 那么,使用xmake进行交叉编译的时候,只需要进行如下配置和编译: {代码...} xmake会去自动探测,gcc等编译器的前...

[转]:复杂多边形光栅化算法

2016-07-21
阅读 5 分钟
4.5k
tbox我会陆陆续续一直进行一些小规模更新,明年上半年稍微重构一些模块后,就开始重点重新搞gbox了,这才是我一直最想做,也是最喜欢做的项目了

[转]:xmake编译配置过程详解

2016-07-20
阅读 1 分钟
3.1k
xmake 在构建程序的时候,会去自动检测系统环境,工程描述等来创建最合适的编译配置来进行编译。。 一般情况下,我们只需要执行: {代码...} 就行了,并且如果工程描述没有改变,就不会去重新检测和生成配置。。 但是有时候,我们的编译需求千奇百怪,不可能一行xmake就能完全满足我们的需求,例如:我要在macosx上编译a...

[转]:内置变量与原生shell脚本运行

2016-07-19
阅读 1 分钟
3.4k
xmake在xmake.lua中提供了 $(varname) 的语法,来支持内置变量的获取,例如: {代码...} 它将会在在实际编译的时候,将内置的 buildir 变量转换为实际的构建输出目录:-I./build 并且这些变量在自定义脚本中,也是可以支持的,例如: {代码...} 这将会在编译完后,输出: {代码...} 这些内置变量,大部分都是通过配置的...

[转]:多进程等待的跨平台实现

2016-07-18
阅读 10 分钟
4k
如果所有编译进程都在处理编译,没有退出的时候,xmake的lua主进程会不断地在这些任务间,不停的切换轮询进程的状态,但是有没有机会执行其他任务,导致cpu过高,抢占了编译进程的cpu时间。。