Microsoft 2010 visual c , installing FLTK
Microsoft 2010 visual c , installing FLTK
FLTK 与 MSV2010C++ 的问题
我正在遵循"编程 - 使用C++的原则和实践"。
尝试使 FLTK 正常运行时遇到困难。我为我工作过一次,然后就再也没有了。我已经详细介绍了下面采取的步骤,如果有人能注意到任何奇怪的东西,我将不胜感激。
我主要关心以下几点:1( 链接器中的步骤> 输入> 其他依赖项有点令人困惑2(我已经为1.1.9和1.3.0构建了两种解决方案。这些会不会发生冲突?3(至少可以说,我对这个过程的理解是基本的。
建筑实际上实现了什么?它将创建哪些对象?如何检查这些是否正确制作?
系统视窗 7(64 位( (Microsoft 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 将库文件从源复制到 x:\Program Files (x86(\Microsoft Visual Studio 10.0\VC\lib
4 将 FL 文件夹复制到(因此添加/替换文件夹( x:\Program Files (x86(\Microsoft Visual Studio 10.0\VC\include\
5 如果我尝试运行解决方案,它会失败 -
========== Build: 6 succeeded, 3 failed, 0 up-to-date, 0 skipped ==========
6 创建一个名为 graphics6 的新项目,作为 win32 项目
7 应用程序设置 - Windows 应用程序和空项目
8 在源文件中,创建了图形6.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 _WinMain@16
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
_WinMain@16 referenced in function ___tmainCRTStartup
结论1.1.9 无法在 MS2010VC++ 下构建
让我们尝试 1.3 而不是 -------
1 下载 1.3 并运行解决方案 \fltk-1.3.0-source\fltk-1.3.0\ide\VisualC2010\fltk.sln
2 构建了它(我已经这样做了几次,所以它给出了以下结果:
========== Build: 0 succeeded, 0 failed, 79 up-to-date, 0 skipped ==========
3 如果我运行它,我会在屏幕上看到图形。目前为止,一切都好!
4 将库文件从源复制到 x:\Program Files (x86(\Microsoft 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 _WinMain@16
referenced in function ___tmainCRTStartup
1>C:my information visual studio 2010Projectsgraphics6Debuggraphics6.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。
我已经在许多网站上搜索了这个问题的解决方案,但还没有找到详细的逐步编写的过程。
FLTK 1.3.0
好的,我终于得到了解决方案(大约 12 小时后(-
第 1 部分 - 构建 FLTK
- 下载 fltk-1.3.0 并解压缩它。
- 将包含的 fltk-1.3.0 文件夹复制到 C:\(您可以使用其他位置,但必须更改某些命令(。
- 进入 C:\fltk-1.3.0\ide\VisualC2010 并运行 fltk.sln
- 右键单击它,然后单击构建
- 它应该完成,没有错误。如果有错误,我非常怀疑本指南是否会对您有所帮助。
- 完成后,您应该能够运行它(将打开窗口(。
第 2 部分 - 运行自己的项目假设构建正确,您现在可以按照以下步骤操作:
- 推出 MSVC++2010
-
文件>新建>项目 - 选择 Win32 项目和名称
FLTK-Test3
-
单击向导上的下一步,然后应用程序类型:保留为Windows应用程序其他选项:空项目单击完成
-
右键单击解决方案资源管理器上的源文件,添加
FLTK-Test3.cpp
-
右键单击 FLTK-Test3 并进入属性
a( 配置属性>C/C++>命令行>其他选项 - 添加
/Ic:fltk-1.3.0
b( 配置属性>链接器>输入>其他依赖项>这是最难的部分,您需要添加
c:fltk-1.3.0libfltkd.lib;wsock32.lib;comctl32.lib;c:fltk-1.3.0libfltkjpegd.lib;c:fltk-1.3.0libfltkimagesd.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.0libfltkd.lib;wsock32.lib;comctl32.lib;c:fltk-1.3.0libfltkjpegd.lib;c:fltk-1.3.0libfltkimagesd.lib;
.lib 文件末尾的"d"表示调试,因此对于最终构建,我认为您应该包括没有"d"的那些。所以。。fltkjpeg.lib not ..jpegd.lib.
如果此部分正常工作,则在添加代码的第一行 #include 时,不应为其添加下划线。如果是,则有问题。
c( 您可能还必须执行此操作(如果它没有运行(
配置属性>链接器>输入>忽略特定的默认库>
libcd.lib
完成所有这些操作后,您应该能够添加以下完整代码 -
#include <FL/Fl.h> #include <FL/Fl_Window.h> int main() { Fl_Window win(320,200); win.show(); return Fl::run(); }
输入上面的代码,然后运行。
我仍然有很多错误,-
'FLTK-Test3.exe': Loaded 'C:UsersUSERDocumentsVisual Studio 2010ProjectsFLTK-Test3DebugFLTK-Test3.exe', Symbols loaded.
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64ntdll.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64kernel32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64KernelBase.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:Windowswinsxsx86_microsoft.windows.common- controls_6595b64144ccf1df_5.82.7601.17514_none_ec83dffa859149afcomctl32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64advapi32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64msvcrt.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64sechost.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64rpcrt4.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64sspicli.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64cryptbase.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64gdi32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64user32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64lpk.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64usp10.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64msvcr100d.dll', Symbols loaded.
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64comdlg32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64shlwapi.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64shell32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64ole32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64imm32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64msctf.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64uxtheme.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64dwmapi.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64clbcatq.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64oleaut32.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64msimtf.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Loaded 'C:WindowsSysWOW64version.dll', Cannot find or open the PDB file
'FLTK-Test3.exe': Unloaded 'C:WindowsSysWOW64msimtf.dll'
'FLTK-Test3.exe': Unloaded 'C:WindowsSysWOW64version.dll'
.. 但它跑了!
希望有帮助。
大卫,我建议你观看格雷格·埃尔科拉诺制作的这个优秀的(这么多年后它仍然摇滚(视频教程:http://seriss.com/people/erco/fltk-videos/fltk-ms-vs-build.html .该视频的标题为">如何使用Visual Studio 7.0开始构建FLTK",但我相信它也适用于VC 2010。
关于你的问题 - 我认为这只是可能导致问题的项目类型......将项目配置为 Win32 项目。虽然,FLTK 应用程序也应该作为控制台应用程序工作......
您收到的错误消息表明,您可能已使用运行 FLTK 所需的设置(Win32 控制台应用程序(以外的设置创建了项目。
以下链接应该会有所帮助。
http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvc/thread/b83e4884-9dec-4d67-ab92-90d5b6c8c51c/
- FLTK:按下哪个按钮 - 将数字传递给按钮的回调 (lambda)
- FLTK 2.0构建和演示,适用于VS2019的2011年左右的代码库
- 找不到 FLTK(缺少:FLTK_INCLUDE_DIR)
- 使用 fltk 时,文本未显示在已编译的窗口中
- 如何在单击按钮FLTK的确切时刻获得小部件的值
- 我在窗口中有一个fltk Fl_Choice下拉菜单,但只能通过鼠标使用
- FLTK:窗口在 MacOS 上获得焦点时的事件
- 带有代码块的 FLTK 错误
- 如何使用Stroustrup的Fltk Text类调用变量?
- 尝试在 c++ 中的 Fltk GUI 中右键单击
- 如何绘制多个矩形 FLTK C++
- Installing GTest and GMock
- 通过函数调用滑块fltk c
- 如何修复书'Programmin principles and practice Using C++'中的 FLTK 头文件?
- 如何在循环中绘制东西(fltk/c )
- 在 FLTK 中添加和分配值
- 如何使用 fltk 使点出现
- FLTK 回调不接受我的函数指针
- 在Linux中使用FLTK应用程序
- Microsoft 2010 visual c , installing FLTK