当前位置: 首页 > article >正文

Windows上使用gcc

安装

下载x86_64-7.3.0-release-win32-seh-rt_v5-rev0 安装包,解压,将对应解压路径下的bin加入环境变量path,将mingw32-make.exe 改名make.exe,使用gcc同样可以在Windows上生成.o文件和.a文件,也可以生成.lib文件

test.c

#include <stdio.h>
typedef char uint8;
int main()
{
    printf("Hello world\n");
#ifndef uint8
    typedef char uint8;
#endif
        uint8 c = 'a';
    return 0;
}

$ gcc -E test.c -o test.i 

预处理进行头文件展开和宏替换

gcc -S test.i -o test.s
生成汇编

 gcc -c test.s -o test.o生成二进制文件

 gcc test.o -o test生成可执行文件

 

 

也可以使用make生成

test:test.c
    gcc test.c -o $@

由于使用了gitbash,git中$PWD得到的是/e/proj/Project1/test.c make中找不到

对应自动化编译bash中加入程序:

local currentPath=$TP_WIN_CURRENT_PATH;

    if [[ "$TP_WIN_CURRENT_PATH" == /* ]] ; then

        currentPath=${TP_WIN_CURRENT_PATH:1:1}:/${TP_WIN_CURRENT_PATH:3};

        echo "currentPath $currentPath";

    fi

 


http://www.kler.cn/a/13953.html

相关文章:

  • 关系数据库(查询优化)
  • 软件测试工程师需要达到什么水平才能顺利拿到 20k 无压力?
  • ChatGPT实战100例 - (05) ChatGPT 结合 Mermaid 的 Gantt 图表示
  • 如何在Java中创建临时文件?
  • MySQL数据库——MySQL使用DISTINCT过滤重复数据
  • 【SCI电气】考虑不同充电需求的电动汽车有序充电调度方法(Matlab代码实现)
  • 机器学习 探索性数据分析
  • vue3 Pinia快速入门
  • 指纹浏览器科普:管理上百个社媒账号?窗口同步?RPA自动化?
  • MySQL基础练习——创建数据库、数据表,并进行修改
  • 【Chano的SFM教程】3dmax 面部表情.VTA基本制作教程
  • 匿名管道与命名管道
  • springboot集成webservice
  • 【AutoGPT】你自己运行,我先睡了—— ChatGPT过时了吗?
  • JUC多并发编程 LockSupport和线程中断
  • 最佳实践:Android应用中的网络请求和数据缓存
  • 利用校正板对无人机影像辐射校正
  • [算法前沿]--004-transformer的前世今生
  • java超市会员积分管理系统
  • 【Android车载系列】第10章 系统服务-SystemServer源码分析(API28)