关于CL编译器的问题。

问题描述

有这么一个C#程序调用CL来编译C文件,就是在程序里用打开CMD进程,然后调用CL命令来编译。因为我是在自己机子上配置好了环境变量,所以能识别CL命令,而对于那些默认情况下不识别CL命令的自己,我要怎么做啊?在代码里设定环境变量么?我问过网上一个人,说是可以将CL编译器和自己的程序打包在一起。请问怎么打包啊。或者这2个思路都是错的。。求大侠指导一下。

解决方案

解决方案二:
将CL编译器以及依赖项和自己的程序放在一起发布,然后将命令cl换成CL编译器的具体地址如:"clXXXX"->"C:\cl.exeXXXX"
解决方案三:
因为VisualC++不是免费的,所以直接捆绑C1或者VC++编译器的一部分可能是非法的。不过这样做的确可行。你可以使用setpath命令来设置环境变量。具体做法可以参考MSDN中C++编译器命令。
解决方案四:
代码里可以设置Environment.SetEnvironmentVariableMethod(String,String)Creates,modifies,ordeletesanenvironmentvariablestoredinthecurrentprocess.

时间: 2024-09-16 20:18:02

关于CL编译器的问题。的相关文章

使用ultraedit和cl编译器打造简易c/c++开发环境

在visual c++下,每编写一个简单的小程序,就得生成一大串中间文件,另人十分的不爽.下面提供一个新的编写c/c++程序的方法: (1),下载utraledit-32编辑器,推荐v11. (2),在utraledit-32中,分别点击菜单:高级-工具配置,出现一个dialog,用来设置用户自定义的菜单项.我们的想法是,设置一个编译菜单和运行菜单项,分别用来编译在utraledit-32编写的c/c++源文件.这样,在utraledit-32中编写好程序后,点击这两个菜单,就可以编译程序,和运

windows下cmd命令编译C++

  我已经装了Visual Studio,那么我应该好好利用其cl编译器.OK,步骤记录如下(这里说明一下,我的环境是Windows 7 + Visual Studio 2010,其中VS 2010安装位置是D盘):   1.修改环境变量      在系统属性-高级-环境变量-用户变量中:      编辑PATH增加cl编译器的路径D:/Program Files/Microsoft Visual Studio 10.0/VC/bin以及MSPDB60.DLL的路径D:/Program File

入侵检测-关于一个简单的堆栈例子

问题描述 关于一个简单的堆栈例子 我在读一本入侵检测技术的书,看到一个简单的堆栈溢出示例,看不懂,请各位大神解释一下是什么意思 解决方案 简单说就是通过程序编写的不严格,使局部变量溢出从而覆盖掉堆栈上的返回值.调用一个函数时,以__stdcall为例,先把参数入栈,然后时返回地址入栈, CPU执行现场跳转到函数中 ,然后是ebp寄存器入栈,随后局部变量和寄存器入栈,不同的编译器可能会有所差别,比如微软CL编译器在处理Debug和Release时是有一些区别的,但大致是相同的,溢出攻击,简单说就是

如何在windows中使用cmd命令去编译,运行C++程序

下载VC6.0,下载完后安装. 1.修改环境变量 在系统属性-高级-环境变量-用户变量中: ①编辑PATH增加cl编译器的路径D:/Program Files/Microsoft Visual Studio 10.0/VC98/bin以及MSPDB60.DLL的路径D:/Program Files/Microsoft Visual Studio 10.0/Common/MSDev98\Bin,用分号分隔. ②新建变量INCLUDE:D:/Program Files/Microsoft Visua

gcc,g++,extern “C” :一些编译错误的缘由

正好是我们代码中遇到的问题,之前不求甚解,只用g++编译没有错误就不管了,现在要跨平台到windows下就遇到了问题.全文转载自:http://user.qzone.qq.com/75172588/blog/1248167335 gcc和g++的区别1.gcc在编译阶段,把后缀为.c的源文件按照c语法和方式进行编译:把后缀为.cpp的源文件,按照c++语法和方式进行编译.在链接阶段,不自动和C++程序使用的库链接.所以,.cpp如果有c++的代码,可能会产生链接错误:.c不存在这个问题,因为如果

DLL编写教程(绝对经典之作)

DLL编写教程 半年不能上网,最近网络终于通了,终于可以更新博客了,写点什么呢?决定最近写一个编程技术系列,其内容是一些通用的编程技术.例如DLL,COM,Socket,多线程等等.这些技术的特点就是使用广泛,但是误解很多:网上教程很多,但是几乎没有什么优质良品.我以近几个月来的编程经验发现,很有必要好好的总结一下这些编程技术了.一来对自己是总结提高,二来可以方便光顾我博客的朋友. 好了,废话少说,言归正传.第一篇就是<DLL编写教程>,为什么起这么土的名字呢?为什么不叫<轻轻松松写DL

使用VS2015编译grpc_1.3.1

环境: win7_x64,VS2015 开始: 一.安装工具 1. 安装cmake 2. 安装ActivePerl 3. 安装golang 4. 安装nasm 验证安装是否安装成功: cmake -version perl -version go version nasm -v 如果出现错误,请检查是否安装成功:若安装成功,则需要检查安装目录是否添加到环境变量path中. 二.下载源码 1. grpc-1.3.1.tar.gz 解压到D:/grpc-1.3.1 2. benchmark-1.1.

搭建C语言开发环境(Windows平台)汇总_C 语言

新接触C语言,如何进行C语言开发环境的搭建值得思考并整理 一.在Windows平台配置GNU环境 GNU http://www.gnu.org/ 选择以下GNU环境下载安装到C盘:     1.MinGw         官网下载安装 http://www.mingw.org/         本站高速下载安装 http://www.jb51.net/softs/192011.html         将C:\MinGW\msys\1.0\msys.bat 发送到桌面快捷方式         在

深入探究VC —— 编译器cl.exe(1)

cl.exe的功能是将源代码文件编译为可提供链接器使用的obj对象文件.cl.exe命令行参数形式如下: CL (option...) file... [option | file]... [lib...] [@command-file] [/link link-opt...] 各命令行参数的意义如下 : 1.option 命令行中的"option"是指一个或多个编译选项.在指定选项时,需要在选项前加正斜杠(/)或一个短划线(-).有一些选项还会带有参数,使用":"