精华内容
下载资源
问答
  • C/C++入门(一):从命令行运行编译器

    千次阅读 2020-11-20 21:22:31
    今天学了一下如何从命令行运行编译器,作出以下总结。 一、从命令行运行编译器 如果使用命令行界面,通常是在一个控制台窗口内(例如UNIX系统中的外壳程序窗口或者Windows系统中的命令提示符窗口)编译程序。假如...

    最近接触的代码都是C++大工程,难免心里有点虚,所以还是决定先从基本的学起,捧起厚厚的C++ Primer(使用C++11标准),一点一点积累,争取摆脱菜鸡行列吧。

    今天学了一下如何从命令行运行编译器,作出以下总结和演示。

    一、从命令行运行编译器

    如果使用命令行界面,通常是在一个控制台窗口内(例如UNIX系统中的外壳程序窗口或者Windows系统中的命令提示符窗口)编译程序。假如main程序保存在文件prog1.cpp(不同编译器使用不同的后缀命名约定,最常见的有.cc,.cxx,.cpp,.cp,.C等)中,可以用以下命令来对其进行编译:
    $ CC prog1.cpp
    其中CC是编译器程序的名字(在不同操作和编译器系统中,运行C++编译器的命令各不相同。默认情况下,运行GNU编译器的命令是g++,运行微软Visual Studio 2010或2017编译器的命令为cl),$是系统提示符。执行完上面这条命令后编译器会生成一个可执行文件,其中Windows系统会将这个可执行文件命名为prog1.exe,UNIX系统中的编译器会将这个可执行文件命名为a.out。

    二、运行GNU或微软编译器

    1.运行GNU编译器命令

    运行GNU编译器的命令是g++:

    $ g++ -o prog1 prog1.cpp

    其中-o prog1是编译器参数,指定了可执行文件的文件名。注意在UNIX系统中,可执行文件没有后缀,在Windows系统中,后缀为.exe。如果忽略了-o prog1参数,在UNIX系统中编译器会生成一个名为a.out的可执行文件,在Windows系统中则会生成一个名为a.exe的可执行文件。

    2.运行MSVS2017(Microsoft Visual Studio 2017 )编译器命令

    运行VS2017编译器的命令为cl:

    $ cl /EHsc prog1.cpp

    此处命令cl调用编译器,/EHsc 是编译器选项,用来打开标准异常处理。微软编译器会自动生成一个可执行文件,其名字与第一个源文件名对应。可执行文件的文件名与源文件名相同,后缀名为.exe。

    三、运行可执行文件

    1.在Windows系统中运行一个可执行文件

    需要提供可执行文件的文件名,可以忽略其扩展名.exe;

    $ prog1

    在一些系统中,即使文件就在当前目录或文件夹中,也必须显式指出文件的位置,在此情况下,可以键入:

    $ .\prog1

    "."后跟一个反斜杠指出该可执行文件在当前目录中

    2.在UNIX系统中运行一个可执行文件

    在UNIX系统中运行一个可执行文件需要使用全文件名,包括文件扩展名:

    $ a.out

    如果需要指定文件位置,需要用一个"."后跟一个斜杠来指出可执行文件的位置:

    $ ./a.out

    访问main的返回值的方法依赖于系统。在UNIX和Windows系统中,执行完一个程序后,都可以通过echo命令获得其返回值。

    在UNIX系统中,通过如下命令获得状态:

    $ echo $?

    在Windows系统中,通过如下命令获得状态:

    $ echo %ERRORLEVEL%

    四、Windows系统下进行操作演示

    1.首先在桌面新建个txt文档,输入要执行的源代码,然后保存重命名为“hello-dhq.cpp”
    接着在Windows自带的命令提示符界面进行操作,写上以下命令行:

    cl C:\Users\dhq\Desktop\hello-dhq.cpp

    出现如下提示:
    在这里插入图片描述
    这时参照该博客在Path系统变量中添加相应的环境变量D:\VS2017\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x86,再次运行出现情况如下:
    在这里插入图片描述
    这说明cl工具路径设置成功,但是出现“stdio.h:不包括路径集”的提示,这表明找不到stdio.h,这时需要配置环境变量:计算机右键打开属性,进入控制面板系统页,选择高级系统设置->环境变量->系统变量
    添加INCLUDE和LIB两个环境变量,并分别为其添加变量值,如下图:
    在这里插入图片描述
    在这里插入图片描述
    添加完之后再次运行得到如下情况(真是曲折啊~):
    在这里插入图片描述
    这下我就不得不怀疑我的include文件夹下没有stdio.h这个头文件,一找,果然没有(裂开)。哎,找个stdio.h复制到include文件夹不知道有没有用,嗯说干就干!我在D:\Windows Kits\10\Include\10.0.17763.0\ucrt路径中找到了stdio.h将其复制到了VS2017的include文件夹下,虽然添加了stdio.h后还会出现一些error提示,不过按照提示的来复制D:\Windows Kits\10\Include\10.0.17763.0\ucrt下的相应的头文件到include文件夹下就可以了,之后出现如下情况:
    在这里插入图片描述
    生成了hello-dhq.exe可执行文件(谢天谢地,真怀疑我当时装VS2017是不是漏了很多东西)但是有报错说无法打开一个库文件kernel32.lib,那我就去D:\Windows Kits\10\Lib\10.0.17763.0\um\x86找了复制到VS2017的lib的x86文件夹下,再次运行说libucrt.lib找不到,我就去D:\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86找了复制到lib的x86文件夹下,再次运行说uuid.lib无法打开,我就去D:\Windows Kits\10\Lib\10.0.17763.0\um\x86下找了复制到lib的x86文件夹下,再次运行,这下,可没再报啥错了!!!!.exe和.obj文件都正常生成,亏我肯陪它玩儿这么久~
    在这里插入图片描述
    接下来试试运行一下这个hello-dhq.exe可执行文件,按照上面第三大部分的第一点说的那样在系统提示符下输入:hello-dhq.exe或者hello-dhq(省略了扩展名),结果总算是正常啦嘿嘿嘿~
    在这里插入图片描述
    在这里插入图片描述

    其实除了上述方法在Windows自带的命令提示符界面进行操作以外,还有一种方法可以借鉴,也就是在命令行中执行MSVC自带的环境配置工具VsDevCmd.bat,具体的参考此博客

    2.除了在Windows自带的命令提示符下运行命令行以外,还可以在开始菜单下vs2017的开发人员命令提示符中(如下图,看不太清楚)输入命令:
    在这里插入图片描述
    然后输入命令行cl /EHsc C:\Users\dhq\Desktop\hello-world.cpp,很快就成功了!!!
    在这里插入图片描述
    运行一下生成的hello-world.exe可执行文件试试:
    在这里插入图片描述
    Perfect,比上面那种方法简单多了!!!!

    展开全文
  • 从命令行运行编译器

    千次阅读 2018-01-10 14:12:35
    《C++ primer》 P3介绍的从命令行运行编译器 于是基于VS2013进行了尝试 1、首先配置环境变量,用户变量中path变量添加了 C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE  C:\Program Files ...

    《C++ primer》 P3介绍的从命令行运行编译器

    于是基于VS2013进行了尝试

    1、首先配置环境变量,用户变量中path变量添加了

    C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE 

    C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin

    新建lib变量:C:\ProgramFiles (x86)\Microsoft Visual Studio 12.0\VC\lib

    新建include变量:C:\ProgramFiles (x86)\Microsoft Visual Studio 12.0\VC\include/

    2、运行->cmd->进入目录

    //txt编写代码并保存为main.cpp
    #include<stdio.h>
    void main()
    {
    	printf("Hello world!\n");
    }

    3、出现了error


    百度了一圈最终找到了这个error的解决方案

    Visual Studio 2013->Visual Studio Tools ->开发人员命令提示 右键选择"属性"查看”目标”中的地址:%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\VsDevCmd.bat""


    展开全文
  • 使用项目 (.prj) 文件从命令行编译 MATLAB 代码的 Perl 脚本。 Mathworks 在 R2011b 中消除了此功能。 它提供的功能与以前在<R2011b版本中提供的功能相同。 用法示例: ./runMcc.pl projectFile.prj ...
  • 命令行调用编译器

    2015-11-24 22:49:12
    一直用java来写程序,java配置好jre路径之后,在cmd下编译运行,很方便。刚好要给一个舍友改下C程序,想到可不可以像java一样在环境变量里配置好C的编译路径呢?于是上网搜了一下,得到如下结果:一、如果装有VC,那...

    一直用java来写程序,java配置好jre路径之后,在cmd下编译运行,很方便。

    刚好要给一个舍友改下C程序,想到可不可以像java一样在环境变量里配置好C的编译路径呢?

    于是上网搜了一下,得到如下结果:

    一、如果装有VC,那就简单了,因为VC带有C的编译器,可以将此路径设置进环境变量。

    Windows系统下编译连接源代码方法:
    cl -GX test.c
    -GX: 启动同步异常处理
    上面的命令会产生可执行程序:test.exe
    在命令行中直接输入:test.exe 就可运行该程序

    Tips:
    一、cmd中键入cl提示不认识cl命令,则由于无法找到cl.exe程序。解决方法如下:
    添加系统变量(Path),这样:我的电脑->属性->高级->环境变量->系统变量,在path中添加
    C:/Program Files/Microsoft Visual Studio 9.0/VC/bin;。
    注意:
    1、结尾最后用“;”隔开!
    2、如果你的Microsoft Visual Studio 低于9.0版本或高于9.0版需要修改上面的路径名称。

    二、cmd中键入cl执行编译时会出现mspdb80.dll无法找到的情况,是因为VC/Bin/下没有 “msobj80.dll,
    mspdb80.dll,mspdbcore.dll,mspdbsrv.exe”这四个文件,解决的方法:
    1>直接从Common7/IDE/下复制这四个文件到VC/Bin/下即可解决
    2>添加系统变量(Path),这样:我的电脑->属性->高级->环境变量->系统变量,在path中添加 C:/Program Files/Microsoft Visual Studio 8/Common7/IDE;,注意结尾最后用“;”隔开!
    这样在用cl编译就不会出现mspdb80.dll文件找不到的错误了。

    三、如果你在编译过程中,出现一下错误:
    1、fatal error C1034: stdio.h: no include path set
    2、fatal error LNK1104: cannot open file “kernel32.lib
    请在我的电脑->属性->高级->环境变量->系统变量中新建系统变量LIB、INCLUDE并设置它们的值为:
    (LIB)C:/Program Files/Microsoft SDKs/Windows/v6.0A/Lib;C:/Program Files/Microsoft SDKs/Windows/v5.0/Lib;C:/Program Files/Microsoft Visual Studio 9.0/VC/lib
    (INCLUDE)C:/Program Files/Microsoft Visual Studio 9.0/VC/include

    Linux系统下编译连接源代码的方法:
    gcc -g -c test.c -o test 只生成目标文件(.obj文件),没有生成可执行文件(也就是说test是.obj文件)
    gcc -g test.c -o test 生成可执行文件(可以通过./test运行程序)
    -g:生成调试信息。GNU 调试器可利用该信息。
    -c:只编译并生成目标文件。(没有中间文件生成和可执行文件,如列表文件、可执行文件)
    -o:设置生成的可执行程序的名字为test
    上面的命令会产生可执行程序:test
    在Terminal中输入:./test 就可以运行该程序了。

    操作步骤如下:

    1.在命令行下,先运行vcvars32.bat(此文件在VC安装目录/Bin文件夹里,其中设置了环境变量和路径等信息)。或者,手动修改环境变量:

    path=你安装VS的路径/VC98/Bin

    lib=你安装VS的路径/VC98/lib;你安装VS的路径/VC98/MFC/lib

    include=你安装VS的路径/VC98/include;你安装VS的路径/VC98/MFC/include;你安装VS的路径/VC98/ATL/lib

    2.然后直接用CL编译器编译C++程序(如:CL /GX /MT zx.cpp)。

    CL经常使用的选项为:

    多线程dll(/MD)-动态链接,不包含运行时库文件

    多线程(/MT)-静态链接,包含运行时库文件

    附:CL 参数,即编译选项如下:

    -优化-

    /O1 最小化空间 /Op[-] 改善浮点数一致性
    /O2 最大化速度 /Os 优选代码空间
    /Oa 假设没有别名 /Ot 优选代码速度
    /Ob 内联展开(默认 n=0) /Ow 假设交叉函数别名
    /Od 禁用优化(默认值) /Ox 最大化选项。(/Ogityb2 /Gs)
    /Og 启用全局优化 /Oy[-] 启用框架指针省略
    /Oi 启用内部函数

    -代码生成-

    /G3 为 80386 进行优化 /Gh 启用 _penter 函数调用
    /G4 为 80486 进行优化 /GH 启用 _pexit 函数调用
    /G5 为 Pentium 进行优化 /GR[-] 启用 C++ RTTI
    /G6 对 PPro、P-II、P-III 进行优化 /GX[-] 启用 C++ EH (与 /EHsc 相同)
    /G7 对 Pentium 4 或 Athlon 进行优化 /EHs 启用 C++ EH (没有 SEH 异常)
    /GB 为混合模型进行优化(默认) /EHa 启用 C++ EH(w/ SEH 异常)
    /Gd __cdecl 调用约定 /EHc extern “C” 默认为 nothrow
    /Gr __fastcall 调用约定 /GT 生成纤维安全 TLS 访问
    /Gz __stdcall 调用约定 /Gm[-] 启用最小重新生成
    /GA 为 Windows 应用程序进行优化 /GL[-] 启用链接时代码生成
    /Gf 启用字符串池 /QIfdiv[-] 启用 Pentium FDIV 修复
    /GF 启用只读字符串池 /QI0f[-] 启用 Pentium 0x0f 修复
    /Gy 分隔链接器函数 /QIfist[-] 使用 FIST 而不是 ftol()
    /GZ 启用堆栈检查(/RTCs) /RTC1 启用快速检查(/RTCsu)
    /Ge 对所有函数强制堆栈检查 /RTCc 转换为较小的类型检查
    /Gs[num] 控制堆栈检查调用 /RTCs 堆栈帧运行时检查
    /GS 启用安全检查 /RTCu 未初始化的本地用法检查
    /clr[:noAssembly] 为公共语言运行库编译
    noAssembly - 不产生程序集
    /arch:

    展开全文
  • 2.没有图形界面,仅仅是个编译器和附带的库以及Windows SDK,可用于WINAPI编程 3.VS2010Pro+SP1正常安装后提取,和官方文件一致 4.在其他机器运行编译出来的程序需要VS2010SP1.7z\VS2010SP1\redist\下面目录里面的dll ...
  • JasperStarter是JasperReports的命令行启动器和批处理编译器
  • 使用命令行编译器

    2020-01-10 17:24:40
    使用命令行 编译器 在基于 UNIX 的系统(如 OS X、Linux、Cygwin、FreeBSD 和 Solaris)上安装 Kotlin 的更简单方法是使用SDKMAN!。 只需在终端中运行以下命令并按照说明操作; 安装比较 简单; 可能跟 网速有关; ...

    Kotlin 

    使用一门新的语言,那就要hello world 来庆祝 !~

     使用命令行 编译器

    在基于 UNIX 的系统(如 OS X、Linux、Cygwin、FreeBSD 和 Solaris)上安装 Kotlin 的更简单方法是使用 SDKMAN!。 只需在终端中运行以下命令并按照说明操作;

    安装比较 简单;

    可能跟 网速有关;

    创建一个名为 hello.kt 的新文件,内容如下:

    fun main(args: Array<String>) {
        println("Hello, World!")
    }

    kotlinc hello.kt -include-runtime -d hello.jar

    java -jar hello.jar

    展开全文
  • kotlin命令行编译器

    2017-09-20 11:00:49
    kotlinc命令行编译器, 执行kotlinc.bat进行编译,执行kotlin.bat进行运行 可以不需要任何额外开发工具,编译运行kotlin的代码
  • 命令行调用VS编译器

    2019-09-17 10:49:57
    不用打开VS编译器,直接用命令行操作, 参考:https://blog.csdn.net/luoweifu/article/details/49847749
  • 教程命令行编译器解决办法 命令行命令行输入输出的效果如下: python Python 3.8.5 (default, Sep 4 2020, 07:30:14) [GCC 7.3.0] :: Anaconda, Inc. on linux Type "help", "copyright", "credits" or "license...
  • 命令行运行Python代码

    千次阅读 2020-01-11 20:33:17
    在左下角运行中找到命令行窗口或者搜索CMD命令,找到命令行窗口,进入命令行窗口后,输入Python,即进入了命令行代码编辑窗口,如下所示: 当命令行窗口出现了>>>时,表示可以编辑代码,比如,我们输入...
  • 如何用命令行运行可执行程序.exe

    千次阅读 2020-08-15 06:46:46
    也有可以在命令行编译运行程序的,得找到自己的编译器位置然后配置,如果想弄的可以百度这里主要是介绍如何运行可执行程序 在windows 系统中,开始菜单右键,点击运行,输入cmd (请务必采用这种方式打开命令行) ...
  • jd-cli-命令行Java反编译器 jd-cli是围绕 Java Decompiler项目的简单命令行包装。 下载 在找到最新信息。 要求 在版本8或更高版本(对于1.0.0及更高版本)中需要而对于较旧的版本则需要Java 6。 用法-命令行 您可以...
  • 从命令行运行编译器 使用命令行界面,通常是在一个控制台窗口内(例如UNIX系统中的外壳程序窗口或者Windows系统中的命令提示符窗口)编译程序。假定我们的main程序保存在文件prog1.cc中,可以用如下命令来编译它 ...
  • 利用命令行运行C代码(Hello,World!)

    千次阅读 2020-06-17 23:09:30
    我以如下代码为例: # include # include void sayHello() { printf("Hello,World!\n"); system("pause"); } int main() { sayHello(); return 0; } 将之分为两个块: 一, # ... 参考文献 《C语言 入门到项目实践》
  • C#命令行编译器选项

    千次阅读 2009-10-12 23:14:00
    C#命令行编译器选项选项作用@制定响应文件/?列出编译命令选项/addmodule指定一个或多个模块为装配的一部分/baseaddress指定载入动态链接库的首地址/bugreport生成一个报告文件,其中包
  • C#命令行编译器

    千次阅读 2009-10-25 22:19:00
    摘要:本文分析了使用 C# 命令行编译器 csc.exe 生成应用程序的过程。同时,还将向读者介绍很多为 C# 2.0 独有的编译器选项,例如,extended/reference 标志和强名称支持。阅读完本文的内容之后,您将能够轻松地在...
  • 是用于故事格式的免费(免费和免费)命令行编译器,使用编写。 有关如何设置和使用它的信息,请参阅。 如果您认为自己在Tweego中发现了错误,或者只是想提出建议,则可以通过来做到这一点。 Tweego也有一个有趣的...
  • 之前使用linux系统下的gcc编译c文件,一般是...集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编...
  • 命令行运行c/cpp程序

    千次阅读 2019-01-08 17:20:38
    步骤:(基于64位win10+已安装...首先c++编译器添加到环境变量中。找到VS的安装目录,例如C:\Program Files (x86)\Microsoft Visual Studio 14.0(我的是安装VS2015时默认的安装路径,没做任何改动),然后找到VC文...
  • 下面由我给大家讲解一下如何 配置C#命令行编译器 1.配置C#命令行编译器: 我的电脑 —〉高级 —〉环境变量 —〉Path —〉添 加";C:\Windows\Microsoft.NET\Framework\v2.0.50727"(Path的最后一个路径虽版本 ...
  • 怎样使用C#命令行编译器csc.exe编译Hello World 程序 csc.exe是microsoft .NET framework下的c#编译器: 1.配置C#命令行编译器: 我的电脑 —〉高级 —〉环境变量 —〉Path —〉添加";C:\Windows\Microsoft.NET\...
  • 1.c++编译器使用命令行建立一个文件夹 2.c++编译器使用命令行调用一个画图的python文件 各类文件: 链接: https://pan.baidu.com/s/1kBHUusSF-Dq88TI-8iAR9g 提取码: dgcs 请将数据(groundtruth.txt)和python...
  • 命令行中使用gcc编译器和gdb调试

    千次阅读 2016-07-14 20:54:53
    先在命令行中输入g++看看有没有反应,没有就百度一下如何添加。常见编译选项gcc test.c//编译为a.exe文件 gcc test.c -o test //编译为test.exe文件 gcc test.c -o test -Wall -ansi -pedantic //编译并检查错误...
  • 如何用在命令行下使用VC编译器

    千次阅读 2011-09-16 14:46:53
     现在恐怕很多人已经没有试过在命令行下使用微软的编译器cl来编译和运行程序了,VS提供的IDE环境能够很方便的组织程序。但是个人觉得明白编译链接的来龙去脉对于理解程序和程序的运行机制是很有好处的。  自从...
  • 在windows下,编写c++程序我们一般用集成开发环境,而很少用命令行形式来编译运行程序。下面介绍如何在安装了VS2012后在命令行编译运行程序。 1、修改环境变量 在系统属性-高级-环境变量-用户变量中: 编辑Path...
  • 如何编译程序依赖于你使用的操作系统和编译器。你所使用的特定编译器的相关使用细节,请查阅参考手册或询问经验丰富的同事。 很多PC机上的编译器都具备集成开发环境(Integrated Developed Environment,IDE),将...
  • C# 命令行编译器详解

    千次阅读 2007-08-29 21:11:00
    摘要:本文分析了使用 C# 命令行编译器 csc.exe 生成应用程序的过程。同时,还将向读者介绍很多为 C# 2.0 独有的编译器选项,例如,extended/reference 标志和强名称支持。阅读完本文的内容之后,您将能够轻松地在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 116,156
精华内容 46,462
关键字:

从命令行运行编译器