簡體   English   中英

“ CL.exe”未在獨立項目中編譯C ++

[英]“CL.exe” Not Compiling C++ in stand alone project

如何修復“ CL.exe”未編譯的C ++?

我已經在桌面上創建了一個獨立的python項目,請記住,我沒有使用Visual Studio,實際上是在使用pythontowin。 我想將C ++文件編譯成DLL以用於我的python項目。 但是,嘗試使用cl.exe進行編譯時,出現了奇怪的無法解釋的錯誤。

這是我的C ++文件。

#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;
}

cl.exe使用的命令: cl.exe /std:c++14 /LD ./../LibraryXdll.cpp

這是我得到的錯誤: fatal error C1034: Windows.h: no include path set

如果有人可以解決此錯誤,我將非常感謝,我可以完成我的項目,感謝您的幫助。 關於RanOutOfQuestions!

接受塔德曼的評論:

似乎您沒有設置使用cl.exe的環境變量。如果已經獲得cl.exe,則還應該有一個名為vcvarsall.bat或vcvars32.bat / vcvars64.bat的Bat文件。 如果安裝了默認的Visual Studio,則可以在“程序文件(x86)\\ Microsoft Visual Studio \\版本號\\產品類型,例如community \\ VC \\ Auxiliary \\ Build”下找到這些文件。

運行適當版本的vcvars ...(32或64位,或指定vcvarsall的標志,請參見docs),並將設置THAT SESSION的包含路徑(在該終端內,如果關閉它,更改將再次丟失並且您下次必須再次調用vcvars)。

編輯: vcvars上的Microsoft文檔

您可以通過在執行編譯器之前每次調用vcvars來解決該Reset問題,盡管這不是一個很好的解決方案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM