2012-07-06 154 views
1

FLTK問題與MSV2010C++Microsoft 2010 visual c,安裝FLTK

我在「編程 - 原則和實踐使用C++」。

嘗試讓FLTK正確運行時間很長。我爲我工作過一次,然後再也不會。 我已經詳細介紹了下面所採取的步驟,如果有人能注意到任何奇怪的東西,我將非常感激。

我的主要問題如下: 1)鏈接器>輸入>其他依賴關係中的步驟有點令人困惑 2)我爲1.1.9和1.3.0構建了兩個解決方案。這些衝突可能嗎? 3)我對這個過程的理解至少是基本的。

建築物實際上實現了什麼?它會創建什麼對象?我怎樣才能檢查這些已被正確地做出?

系統 視窗7(64位)(微軟2010的Visual C++)

步驟受審fltt 1.1.9

1下載FLTK-1.1.9源

2 vlC2005溶液給我下面的結果:

========== Build: 66 succeeded, 3 failed, 0 up-to-date, 1 skipped ========== 

3複製的LIB文件,從源頭上 X:\ Program Files文件(x86)的\ MICR osoft的Visual Studio 10.0 \ VC \ lib中

4中複製的FL文件夾複製到(所以被添加的文件夾/替換) X:\ Program Files文件(x86)的\微軟的Visual Studio 10.0 \ VC \包括\

5如果我嘗試運行解決方案,它失敗 -

========== Build: 6 succeeded, 3 failed, 0 up-to-date, 0 skipped ========== 

6創建一個名爲graphics6新的項目,作爲一個Win32項目

7應用程序設置 - Windows應用程序&空項目

8在源文件,創建graphics6.cpp,添加以下代碼

#include <FL/Fl.h> 
    #include <FL/Fl_Box.h> 
    #include <FL/Fl_Window.h> 

    int main() 
    { 
    Fl_Window window(200,200,"Window Title"); 
    Fl_Box box(0,0,200,200,"Hey"); 
    window.show(); 
    return Fl::run(); 
    } 

9當我運行它,我得到以下

1>MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol [email protected] 
    referenced in function ___tmainCRTStartup 

10更改項目設置 - 鏈接>輸入>附加依賴:

"kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib; 
shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(fltkd.lib 
wsock32.lib comctl32.lib fltkjpegd.lib fltkimagesd.lib)" 

11當我跑,我得到這個 -

1>MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol 
[email protected] referenced in function ___tmainCRTStartup 

結論 1.1.9不能MS2010VC++下建立

讓我們嘗試1.3,而不是-------

1下載1.3和運行解決方案\ FLTK-1.3.0源\ FLTK-1.3。0 \ IDE \ VisualC2010 \ fltk.sln

2內置它(我這個做了幾次,所以它提供了以下結果:

========== Build: 0 succeeded, 0 failed, 79 up-to-date, 0 skipped ========== 

3如果我運行它,我得到的圖形。在屏幕上到目前爲止好

4從源頭上LIB文件複製到 X:\ Program Files文件(x86)的\微軟的Visual Studio 10.0 \ VC \ lib中

5複製的FL文件夾複製到(所以該文件夾被添加/替換) x:\ Program Files(x86) \ Microsoft Visual Studio 10.0 \ VC \ include \

6步驟6 - 8與上面的步驟相同,因此只是加載了上一個項目。

7當運行

1>MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol [email protected] 
referenced in function ___tmainCRTStartup 
1>C:my information \visual studio 2010\Projects\graphics6\Debug\graphics6.exe : fatal 
error LNK1120: 1 unresolved externals 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

8加入忽略默認庫> libcd.lib

9具有相同的結果

抱歉的這個長度再次然,但我感覺澄清問題的唯一方法是包含所有細節。

據我所知,我儘可能按照說明進行操作。主要的問題是我無法運行1.1.9。

我已經在很多網站上搜索了這個問題的解決方案,但還沒有找到詳細的一步一步的寫過程。

+0

我認爲你在努力解決這個問題時看錯了一些東西。 :)我希望我有VC2012設置FLTK,並給你答案...在Windows上設置FLTK總是一塊蛋糕... – DejanLekic 2012-07-10 00:14:24

+0

哈哈,有趣的是你說的。我正在嘗試使用MinGw進行設置並失敗:)我的解決方案適用於1.3.0,但不適用於以前的版本。這是我的下一個目標。當我爲他人提供解決方案時會發布解決方案。 – David 2012-07-12 14:48:29

+0

奇怪的是,在MinGW + SYS上構建和使用FLTK是安裝autotools的問題......(msysDTK包) – DejanLekic 2012-07-12 15:36:40

回答

2

FLTK 1.3.0

好工作,我終於得到了一個解決這個(約12小時後) -

第1部分 - 建設FLTK

  1. 下載FLTK-1.3.0和解壓。
  2. 將包含的fltk-1.3.0文件夾複製到C:\(您可以使用其他位置,但必須更改某些命令)。
  3. 進入到C:\ FLTK-1.3.0 \ IDE \ VisualC2010和運行fltk.sln
  4. 右鍵單擊它,然後單擊建立
  5. 應該沒有任何錯誤完成。如果有錯誤,我非常懷疑這個指南會幫助你。
  6. 一旦完成,你應該可以運行它(將打開窗口)。

2部分 - 運行自己的項目 假設構建過程都是正確的,你現在可以按照下列步驟操作:

  1. 啓動MSVC++ 2010
  2. 文件>新建>項目 - 選擇Win32項目和名稱

    FLTK-Test3 
    
  3. 單擊下一步在嚮導然後 應用類型:請爲的Windo WS應用程序 附加選項:空項目 單擊Finish

  4. 權在Solution Explorer中點擊源文件,添加

    FLTK-Test3.cpp 
    
  5. 右擊FLTK-Test3的,進入屬性

    A)配置屬性> C/C++>命令行>附加選項 - 添加

    /Ic:\fltk-1.3.0 
    

    b)中配置屬性>鏈接>輸入>附加依賴> 這是最困難的部分,則需要

    c:\fltk-1.3.0\lib\fltkd.lib;wsock32.lib;comctl32.lib;c:\fltk-1.3.0\lib\fltkjpegd.lib;c:\fltk-1.3.0\lib\fltkimagesd.lib; 
    

    添加到行的結尾(替換#()信息。我的變化導致這一點,你可能會有所不同 -

    kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;c:\fltk-1.3.0\lib\fltkd.lib;wsock32.lib;comctl32.lib;c:\fltk-1.3.0\lib\fltkjpegd.lib;c:\fltk-1.3.0\lib\fltkimagesd.lib; 
    

的「d」在的.lib文件的末尾表示調試,因此對於最終的構建,我認爲你應該包括那些沒有'd'。所以..fltkjpeg.lib不是..jpegd.lib。

如果此部分正常工作,則在添加代碼的第一個#include行時,不應加下劃線。如果是這樣,這是一個問題。

c)您可能還需要做到這一點(如果它並不運行)

配置屬性>鏈接>輸入>忽略特定的默認庫>

libcd.lib 
  1. 一旦這一切已經完成後,您應該可以添加以下完整代碼 -

    #include <FL/Fl.h> 
    #include <FL/Fl_Window.h> 
    
    int main() 
    { 
    Fl_Window win(320,200); 
    win.show(); 
    return Fl::run(); 
    } 
    

輸入上面的代碼,然後運行。

我仍然有一噸errrors的, -

'FLTK-Test3.exe': Loaded 'C:\Users\USER\Documents\Visual Studio 2010\Projects\FLTK-Test3\Debug\FLTK-Test3.exe', Symbols loaded. 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\kernel32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\KernelBase.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\winsxs\x86_microsoft.windows.common- controls_6595b64144ccf1df_5.82.7601.17514_none_ec83dffa859149af\comctl32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\advapi32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\msvcrt.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\sechost.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\rpcrt4.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\sspicli.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\cryptbase.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\gdi32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\user32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\lpk.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\usp10.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\msvcr100d.dll', Symbols loaded. 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\comdlg32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\shlwapi.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\shell32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\ole32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\imm32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\msctf.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\uxtheme.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\dwmapi.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\clbcatq.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\oleaut32.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\msimtf.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Loaded 'C:\Windows\SysWOW64\version.dll', Cannot find or open the PDB file 
    'FLTK-Test3.exe': Unloaded 'C:\Windows\SysWOW64\msimtf.dll' 
    'FLTK-Test3.exe': Unloaded 'C:\Windows\SysWOW64\version.dll' 

..但它跑了!

希望有所幫助。

+0

有一個問題,還有一個要走。我猜1.3.0與他的頭文件不兼容。我收到了很多我無法評論的錯誤。 – David 2012-07-09 08:07:03

+0

我假設你在Windows 7或Windows Vista中,刪除這些警告簡單運行(注意:以管理員身份運行)你的視覺工作室 – 2012-07-13 09:27:09

+0

謝謝!這似乎清除了錯誤。 – David 2012-07-13 12:25:46

0

David,我建議你觀看Greg Ercolano製作的視頻教程:http://seriss.com/people/erco/fltk-videos/fltk-ms-vs-build.html。該視頻標題爲「如何開始使用Visual Studio 7.0構建FLTK」「,但我相信它也適用於VC 2010。

關於您的問題 - 我認爲這只是可能導致問題的項目類型......將您的項目配置爲Win32項目。雖然,FLTK應用應控制檯應用程序,以及...

+0

仍然無法正常工作。我已經在第二臺電腦上安裝了MSVC++ 2010,試過兩種版本。依然沒有。該視頻很有用,但系統太差了,以至於我確定我沒有做錯任何事。如果對這個過程中的每一步都沒有很好的理解,就好像我只是在黑暗中進行拍攝,試圖解決這個過程。我真正需要的是2010年的準確工作指南。感謝您的回覆,我非常欣賞這些信息。我迫不及待想要結束這一切,以便我可以重新開始編程。我的其他選擇是完全跳過圖形部分,但我認爲這將是一個很大的錯誤。 – David 2012-07-09 05:52:52

+0

最後!我似乎正在取得一些進展。鏈接命令行是其中一個問題。我會盡快寫下完整的解決方案。 – David 2012-07-09 06:26:15

+0

好吧,我很高興聽到這個消息。對不起,我無法幫助MS VC - 我很久沒有使用它了 - 我更喜歡使用MinGW + MSYS(http://www.mingw.org)在Windows上構建我的應用程序... – DejanLekic 2012-07-09 07:13:52

相關問題