c编译器学习03:chibicc的win10 vs 编译、调试环境设置

虚拟机

用VMware Workstation 17 Player,安装centos7,安装gcc等开发工具
设置虚拟机的共享文件夹,将win10下下载的chibicc拷贝到/home/a下
直接make编译
在这里插入图片描述
用ip addr查询得到虚拟机的ip地址,后面vs远程开放时使用。

vs设置

vs毕竟是号称宇宙第一ide,虽然目前支持linux远程开发还有些bug,但多趟几个坑,基本都能用了。个人习惯了vs,也比较推荐。
在这里插入图片描述
在本地工程目录加一个CMakeLists.txt文件,内容如下:

cmake_minimum_required(VERSION 3.10)
project(chibicc)

# Set C standard and compilation flags
set(CMAKE_C_STANDARD 11)
add_compile_options(-g -fno-common -Wall -Wno-switch)

# Define source files
set(SOURCE_FILES
    tokenize.c
    unicode.c
    hashmap.c
    type.c
    main.c
    parse.c
    codegen.c
    preprocess.c
    strings.c
)

# Create executable
add_executable(chibicc ${
   SOURCE_FILES})

以上设置完,就可以在win10 vs下进行本地虚拟机的linux c编译器代码的单步debug了。

vs编译输出路径在~/.vs/chibicc …/out/… 目录下。

测试使用chibicc

./chibicc --help 这个输出指示没问题,编译错误是test下的.c测试代码不全导致的。

以alignof.c为例,添加assert函数,修正如下:

#include "test.h"

//add start
//#include "common"
void assert(int expected, int actual, char* code) {
   
	if (expected == actual) {
   
		printf("%s => %d\n", code, actual);
	}
	else {
   
		printf("%s => %d expected but got %d\n", code, expected, actual);
		exit(1);
	}
}
//add end

int _Alignas(512) g1;
......

./chibicc -S …/…/…/src/test/alignof.c 可以输出asm文件。
./chibicc -c …/…/…/src/test/alignof.c 可以输出.o文件
./chibicc …/…/…/src/test/alignof.c 可以输出a.out文件

./a.out文件执行正常,chibicc编译运行测试通过。
在这里插入图片描述

最近更新

  1. TCP协议是安全的吗?

    2024-02-23 16:40:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-23 16:40:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-23 16:40:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-23 16:40:01       18 阅读

热门阅读

  1. 配置docker 支持GPU方法(Nvidia GPU)

    2024-02-23 16:40:01       32 阅读
  2. Cookies

    2024-02-23 16:40:01       28 阅读
  3. kafka消费消息并对消息进行RSA公钥解密

    2024-02-23 16:40:01       31 阅读
  4. 【Ant Design】【List】

    2024-02-23 16:40:01       29 阅读
  5. 服务器防火墙的应用技术有哪些类型?

    2024-02-23 16:40:01       23 阅读
  6. 快速上手vue指南

    2024-02-23 16:40:01       37 阅读
  7. 【LeetCode】升级打怪之路 Day 03:链表 part 1

    2024-02-23 16:40:01       34 阅读
  8. HarmonyOS Stage模型 权限申请

    2024-02-23 16:40:01       28 阅读