2012-08-30 44 views
10

我正在嘗試使用爲f#提供llvm綁定的llvm-fs項目。我已編譯LLVM-3.1.dll文件--enable-shared,它現在駐留在我編譯的可執行文件相同的目錄中(我使用Environment.CurrentDirectory進行了檢查)。在LLVM-FS的DllImport樣子:即使dll與可執行文件在同一文件夾中,DllImport也找不到dll

[<DllImport(
    "LLVM-3.1.dll", 
    EntryPoint="LLVMModuleCreateWithName", 
    CallingConvention=CallingConvention.Cdecl, 
    CharSet=CharSet.Ansi)>] 
extern void* (* LLVMModuleRef *) moduleCreateWithNameNative(string ModuleID) 

然而,當我跑我的應用程序錯誤,它用:

Unable to load DLL 'LLVM-3.1.dll': The specified module could not be found. 
(Exception from HRESULT: 0x8007007E) 

我怎麼要加載的DLL?供參考,here's the exact DLL I'm trying to load

回答

15

此:

「指定的模塊找不到」

可以指向一些庫,它LLVM-3.1.dll從依賴,而不是LLVM-3.1.dll本身。

10

當DLL或EXE無法加載,因爲在這種情況下,Depends.exe非常方便 - 它顯示完整的EXE/DLL依賴關係樹,突出顯示無法加載或丟失的內容。

相關問題