首页 > 其他分享 >Xmake介绍和使用

Xmake介绍和使用

时间:2023-07-06 21:34:43浏览次数:39  
标签:xmake 使用 介绍 编译 Xmake 构建 error hello

@

目录

介绍

Xmake 是一个基于 Lua 语言的跨平台构建工具,用于快速、简单地构建和管理 C/C++ 项目。它提供了简洁的语法和丰富的功能,可以处理常见的项目构建需求,包括编译、链接、测试、安装等。Xmake 的设计目标是提供一种轻量级、易于使用的构建解决方案,适用于各种规模的项目和不同的操作系统平台,如 Windows、Linux 和 macOS 等。

作用

通过Xmake,开发人员可以通过简单的命令行操作,快速构建并管理他们的项目。同时,它还支持模块化构建、插件扩展等特性,方便用户根据具体需求进行定制和扩展。总之,Xmake 是一个功能强大、易用的构建工具,可以帮助开发人员提高项目构建效率。

安装

Windows系统

使用安装包下载,通过 xmake-dev.win64.exe 下载对应的EXE文件,下载完成后,直接一直下一步,直到完成即可。

Linux系统

使用apt安装

sudo add-apt-repository ppa:xmake-io/xmake
sudo apt update
sudo apt install xmake

使用

创建项目

找个一个空的文件夹,打开命令行,输入 xmake create hello, 会生成一个hello world 工程

$ xmake create hello
create hello ...
  [+]: src/main.cpp
  [+]: xmake.lua
  [+]: .gitignore
create ok!

配置编译工具

设置gcc工具: xmake f --toolchain=gcc

F:\other\xmake_test>xmake f --toolchain=gcc
checking for platform ... windows
checking for architecture ... x64

项目编译

编译:xmake

F:\other\xmake_test>xmake
[ 25%]: cache compiling.release src\main.cpp
[ 25%]: cache compiling.release src\main.cpp
[ 50%]: linking.release hello.exe
[100%]: build ok, spent 1.328s

项目运行

F:\other\xmake_test>xmake run
hello world!

官网教程

对应的官网教程xmake-教程

问题

error: cannot execv(nmake ), No such file or directory

img
在该目录下创建一个xmake.lua文件

set_config("toolchain", "gcc") -- 默认使用gcc进行编译
add_rules("mode.debug", "mode.release")

target("c_test")
    set_kind("binary")

error: g++: fatal error: no input files

[ 33%]: linking.release c_test.exe
error: g++: fatal error: no input files
compilation terminated.

标签:xmake,使用,介绍,编译,Xmake,构建,error,hello
From: https://www.cnblogs.com/Wei-Ting/p/17533386.html

相关文章

  • 7.6 爬虫基础知识学习 requests的使用
    1.requests的快速使用 /1爬虫定义:可见即可爬/2安装resquests模块正确路径下输入pipinstallrequests/3用requests发送get请求importrequests#res是响应对象就是http响应python包装成了对象(响应头,响应体等)res=requests.get('https://www.cnblogs.com/abc6838......
  • STM32下USB的使用
    一、介绍USB,即通用串行总线(UniversalSerialBus),包括USB协议和USB硬件两个方面,支持热插拔功能USB2.0使用四根线:VCC(5V)、GND、D+(3.3V)和D-(3.3V)(注:五线模式多了一个DI脚用于支持OTG模式,OTG为USB主机+USB设备双重角色)在USB主机上,D-和D+都接15K的电......
  • 使用docker-compose部署mysql单节点
    前提条件:确保服务器都安装了docker以及docker-compose服务......
  • IDEA:AXIOS使用网页报错net::ERR_CONNECTION_REFUSED
     之前使用的是下载的文件,一直是报错的状态,页面加载不进来 之后进官网选择在线的之后可用。......
  • 学会使用 Postman 环境变量,让接口测试更加高效
    在 Postman 中,用Environments来管理环境变量。我们在开发的过程中,往往会用到多个环境:开发环境,测试环境,UAT环境,生产环境等。我们要调用不同环境的API时,只需切换Postman的Environment即可。下面,我们来具体说下Postman环境变量的使用方法。知识扩展:Postman环境设置介绍......
  • SpringMVC学习巩固(基本使用)(1)
    框架概述:1.SpringMVC专注controller控制层的框架2.SpringMVC基于Servlet技术进行封装3.SpringMVC是SpringFrameWorld中的子框,可以完美融合到Spring容器中主要作用:a.简化请求参数接收b.简化前端数据响应组件作用:1.DispatcherServlet:接收前端参数请求和响应前端数据,并......
  • Kafka使用(自动化)
    self.request_topic='requestRemoteModelServer'self.response_topic='responseRemoteModelServer'self.producer=Biz_模型控制服务.kafka_producer_init()self.consumer=Biz_模型控制服务.kafka_consumer_init(self.response_topic,10000) Biz_模型控制服务.produce......
  • 阿里区块链开放联盟使用http方式对接
    using(HttpClienthttpClient=newHttpClient()){/*所有的步骤实例都得进行http请求,当前demo中我的请求放在最后,只是一步一步的流程进行开发*/SendEntityentity=newSendEntity();#region步骤一:调用合约接口,将数据上链操作成功实现合约调用的列子(目前注释......
  • Excle使用正则提取字符串
    1、Alt+F11打开VB编辑工具2、选择sheet创建新模块3、插入下列代码FunctionRegexExtract(ByValinputStringAsString)AsStringDimregExAsObjectSetregEx=CreateObject("VBScript.RegExp")WithregEx.Global=True.Pattern=......
  • (转)一文搞定 Containerd 的使用
    原文:https://www.cnblogs.com/lvzhenjiang/p/15147993.html在学习Containerd之前我们有必要对Docker的发展历史做一个简单的回顾,因为这里面牵涉到的组件实战是有点多,有很多我们会经常听到,但是不清楚这些组件到底是干什么用的,比如 libcontainer、runc、containerd、CRI、OCI......