2012-07-06 160 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

相关问题