"CL.exe" 不在独立项目中编译 C++
"CL.exe" Not Compiling C++ in stand alone project
如何解决 "CL.exe" 不编译 C++??
我在我的桌面上创建了一个独立的 python 项目,请记住我没有使用 Visual Studio,我实际上使用的是 pythontowin。我想将 C++ 文件编译成 DLL 以用于我的 python 项目。但是我在尝试使用 cl.exe.
进行编译时遇到了奇怪的无法解释的错误
Here is my C++ file.
#include <Windows.h>
#include <iostream>
using namespace std;
void Thread() {
cout < "Hello World" < endl;
Sleep(1000);
}
BOOL DllMain(HINSTANCE hDll,DWORD dwReason, LPVOID) {
if (dwReason == DLL_PROCESS_ATTACH) {
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)Thread, 0, 0, 0);
}
return TRUE;
}
Command used for cl.exe: cl.exe /std:c++14 /LD ./../LibraryXdll.cpp
And this is the error I am getting: fatal error C1034: Windows.h: no include path set
如果有人能解决这个错误,我将不胜感激,我可以完成我的项目,感谢您的帮助。问候 RanOutOfQuestions!
接受 Tadman 的评论:
您似乎没有设置使用 cl.exe 的环境变量
如果你有 cl.exe,你应该还有一个名为 vcvarsall.bat 或 vcvars32.bat / vcvars64.bat 的 Bat-File。在默认 Visual studio 安装的情况下,这些可以在 "Program Files (x86)\Microsoft Visual Studio\version number\produkt type, e.g. community\VC\Auxiliary\Build" 下找到。
运行 vcvars 的适当版本...(32 位或 64 位,或指定 vcvarsall 的标志,请参阅文档),并且将设置该会话的包含路径(在该终端内,如果关闭它,更改将再次丢失,下次必须再次调用 vcvars。
编辑:Microsoft documentation on vcvars
您可以通过每次在执行编译器之前调用 vcvars 来解决该重置问题,尽管这不是一个很好的解决方案
如何解决 "CL.exe" 不编译 C++??
我在我的桌面上创建了一个独立的 python 项目,请记住我没有使用 Visual Studio,我实际上使用的是 pythontowin。我想将 C++ 文件编译成 DLL 以用于我的 python 项目。但是我在尝试使用 cl.exe.
进行编译时遇到了奇怪的无法解释的错误Here is my C++ file.
#include <Windows.h>
#include <iostream>
using namespace std;
void Thread() {
cout < "Hello World" < endl;
Sleep(1000);
}
BOOL DllMain(HINSTANCE hDll,DWORD dwReason, LPVOID) {
if (dwReason == DLL_PROCESS_ATTACH) {
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)Thread, 0, 0, 0);
}
return TRUE;
}
Command used for cl.exe:
cl.exe /std:c++14 /LD ./../LibraryXdll.cpp
And this is the error I am getting:
fatal error C1034: Windows.h: no include path set
如果有人能解决这个错误,我将不胜感激,我可以完成我的项目,感谢您的帮助。问候 RanOutOfQuestions!
接受 Tadman 的评论:
您似乎没有设置使用 cl.exe 的环境变量 如果你有 cl.exe,你应该还有一个名为 vcvarsall.bat 或 vcvars32.bat / vcvars64.bat 的 Bat-File。在默认 Visual studio 安装的情况下,这些可以在 "Program Files (x86)\Microsoft Visual Studio\version number\produkt type, e.g. community\VC\Auxiliary\Build" 下找到。
运行 vcvars 的适当版本...(32 位或 64 位,或指定 vcvarsall 的标志,请参阅文档),并且将设置该会话的包含路径(在该终端内,如果关闭它,更改将再次丢失,下次必须再次调用 vcvars。
编辑:Microsoft documentation on vcvars
您可以通过每次在执行编译器之前调用 vcvars 来解决该重置问题,尽管这不是一个很好的解决方案