什么样的软件或编程语言,我已经学会了没有任何.DLL文件或其他形式独立创建单个可执行程序?
任何建议我将不胜感激!
这是operating system特定的(而不是由语言本身定义)。了解更多关于linkers。
您可能需要使用C ++ 11(或C ++ 14),并指示您的C ++编译器静态链接可执行文件。所以,你应该阅读你的编译器的文件;与GCC你可以pass -static
到g++
命令。
您可能还需要使用Go language。通常的编译器去尝试生成静态链接的可执行文件。
BTW,静态链接executable还有dependencies,例如其operating system kernel(也许公用事业和一些系统文件):显然,对于Windows静态链接的可执行文件将不能在Linux上运行。
(例如,在Linux,使用标准system(3)功能的任何程序默默地取决于/bin/sh
....)
在实践中,我一般不会推荐静态链接的C standard library,但情况因人而异。
当然,你需要一些source code editor编写代码(我喜欢GNU emacs)。有些人使用IDEs,但我更喜欢明确地运行编译命令(可能使用像build automation一些GNU make
工具)。
(注意DEVC ++或码块是IDE,而不是一个compiler)
注:我建议你阅读Operating Systems : Three Easy Pieces(自由downloadable,每个章节都有自己的PDF文件),以了解更多有关操作系统。
一个真正独立的“可执行文件”是你闪到嵌入式设备的图像。您的图片可以(但并不需要)捆绑库如FreeRTOS操作系统,其功能作为一种小型的操作系统。除了实际的硬件,你的程序将完全自给自足。
否则,你至少受惠于已具备了操作系统,与获得“运行”支持库为你的语言(尽管这通常可以静态链接),可能最重要的是第三方库(这通常可能是静态链接太)。
有时候想自成体系的时候,你去,其实你的“节目”是不可执行的,在所有其他方向,到目前为止,但只是一个脚本来通过一个Python通过或进入或JavaScript或者VBScript解释。这实际上是自包含的对立面,但它是很好的便携如果你的所有目标平台存在该语言的实现。
上一个VM(Java,.NET)上运行的代码是一种它们之间中途的房子。
视觉工作室:
Project->'project' Properties
Configuration Properties -> C++ -> Code Generation
Runtime Library
- >多线程[调试]
不要使用多线程[调试] DLL
此外,将[调试]为调试版本和NOT [调试]的发布版本。您可以在左上角的“配置”下拉构建类型之间进行切换。