shawind 发表于 2010-8-18 14:51:05

用bat让mingw更方便一点

用mingw中的c和c++写小程序,直接使用命令行编译,如果不自己指定-o参数,出来exe的默认都是a.exe。这点很不方便。
另外,g++默认为share编译,还要另带基本c,c++库的dll,不然把exe给别人测试时会有点麻烦。
这个bat便是为了解决这两个问题,除了指定静态编译外,还可以根据第一个出现的c或cpp文件,自动为exe命名。
mg++.bat

@for %%i in (%*) do (
    @if %%~xi==.c (
      @set name=%%~ni
      @goto get_name
    )
    @if %%~xi==.cpp (
      @set name=%%~ni
      @goto get_name
    )
)

:get_name
    g++ -static-libgcc -static-libstdc++ -o %name%.exe %*

如:
mg++ -s -O2 test.cpp client.cpp server.cpp
出来的结果就是test.exe,不用再特别的去指定了。
页: [1]
查看完整版本: 用bat让mingw更方便一点