zoukankan      html  css  js  c++  java
  • Tcc学习笔记(二) 安装和配置

    1.下载和编译

    repo.or.cz/tinycc.git下载最新的snapshot压缩包,

    或者用git命令下载: git clone git://repo.or.cz/tinycc.git

    Linux下在路径下输入: ./configure && make && make install

    Windows下先进入win32目录,使用vs2015或使用build-tcc.bat结合GCC[推荐环境为MSYS2]。

    编译完成后的得到tcc的可执行文件。Windows下为tcc.exe以及辅助工具tiny_impdef.exe和tiny_libmaker.exe。

    注:对于Windows,如果需要排除多余的.dll依赖,先要修改build-tcc.bat ,然后用tcc再编译一遍自己。

      最简单方法: tcc -DONE_SOURCE -DTCC_TARGET_PE tcc.c

      对于VS2017写了一个run.bat,可以改成其他版本:

    git.exe clone http://repo.or.cz/tinycc.git 
    @call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\VsDevCmd.bat"
    @mkdir tcc
    @cd tinycc\win32
    @call build-tcc.bat -c cl -t 32 -i ..\..\tcc
    @cd ..
    @pause
    @cls
    ..\tcc\tcc.exe -DONE_SOURCE -DTCC_TARGET_PE -run tcc.c

      你甚至可以进行编译器的自举: ..\tcc\tcc.exe -DONE_SOURCE -DTCC_TARGET_PE -run tcc.c -DONE_SOURCE -DTCC_TARGET_PE -run tcc.c  

    2.TCC配置

    tcc最吸引人的特点是把C语言当脚本运行,即 tcc -run filename.c

    HelloWorld.c的例子:

    1 #include <stdlib.h>
    2 #include <stdio.h>
    3 
    4 int main()
    5 {
    6     printf("Hello World\n");
    7     return 0;
    8 }
    View Code

    2.1命令行测试:

    $ tcc -run HelloWorld.c
    Hello World

    2.2Notepad++配置

    先将tcc.exe所在路径加入环境变量PATH。然后打开Notepad++,运行[F5],输入:

    cmd /c cd /d $(CURRENT_DIRECTORY) & tcc -run $(FILE_NAME) & pause

    保存为TccRun命令,同时可以设置快捷键,如图所示:

    选择运行->TccRun,执行HelloWorld.c。

    Hello World
    请按任意键继续. . .

    2.3 其他编辑器配置

    Sublime Text配置:Tools->New Build System。

    SciTE配置:修改cpp.properties中的go命令为:

    command.go.*.c=tcc -run ./$(FileNameExt)

    Vim配置:修改~/.vimrc,加入语句。

    "--------------------------------------"
    func CodeRun()
        exec "w"
        if &filetype=="c"
            exec "!clear&&tcc -run %"
        elseif &filetype=="cpp"
            exec "!clear&&g++ -o %< && ./%<"
        elseif &filetype=="java"
            exec "!clear&&javac % && java %<"
        elseif &filetype=="python"
            exec "!clear&&python %"
        endif
    endfunc
    "--------------------------------------"
    map <F5> <ESC> :call CodeRun()<CR>
    imap <F5> <ESC> :call CodeRun()<CR>
    vmap <F5> <ESC> :call CodeRun()<CR>

    Visual Studio配置:新建Visual Studio空白解决方案进行配置。

  • 相关阅读:
    numpy.clip(a, a_min, a_max, out=None)(values < a_min are replaced with a_min, and those > a_max with a_max.)
    pytorch使用过程中遇到的一些问题
    conda管理包
    python argparse模块
    pytorch中设定使用指定的GPU
    Linux下dpkg的用法
    python pdb模块
    ubuntu SSH 连接、远程上传下载文件
    Linux中执行shell脚本命令的4种方法总结
    python linux安装anaconda
  • 原文地址:https://www.cnblogs.com/wurui1994/p/6059265.html
Copyright © 2011-2022 走看看