gpt4 book ai didi

c++ - 在 Visual Studio 2012 上安装和使用 FLTK

转载 作者:太空宇宙 更新时间:2023-11-04 11:42:11 25 4
gpt4 key购买 nike

我的机器在 Windows 7 32 位和我的 C++ 编译器是 Visual Studio 2012 所以我首先从这里下载 FLTK ( http://www.stroustrup.com/Programming/FLTK/ ) 然后我做了如下工作需要我:

我。解压缩下载的文件并打开主文件夹 fltk-l.l.?在一个Visual C++ 文件夹(例如 vc2005 或 vcnet),打开 fltk.dsw。如果问到更新旧的项目文件,对所有选择是。

PS: 我的编译器是 vc2012 而不是 vc2005 并且 vc2005 中没有任何名为 fltk.dsw 的文件或者vcnet 文件夹,所以我从 vcnet 中选择了 fltk.sln 并安装了它。安装的时候出了一些问题,但是终于安装成功了!

  1. 从“构建”菜单中选择“构建解决方案”。这可能需要几分钟的时间。源代码被编译成静态链接库,以便您不必在任何时候重新编译 FLTK 源代码一个新项目。该过程完成后,关闭 Visual Studio。

  2. 从主 FLTK 目录打开 lib 文件夹。复制(不只是移动/拖动)除 README.lib 之外的所有 .lib 文件(应该有scven) 到 C:\Prograrn Files\Microsoft Visual Studio\Vc\lib。

  3. 回到FLTK主目录,将FL文件夹复制到C:\Program Files\Microsoft Visual Studio\Vc\include。

  4. 在 Visual Studio 中创建一个新项目,对通常的过程进行一处更改:创建一个“\Vin32 项目”而不是“控制台应用程序”时选择您的项目类型。一定要创建一个“空项目”;否则,一些“软件向导”会为您的项目添加很多东西你不太可能需要或理解。

  5. 在 Visual Studio 中,从主(顶部)菜单中选择项目,然后从从下拉菜单中选择“属性”。

  6. 在“属性”对话框的左侧菜单中,单击“链接器”文件夹。这将展开一个子菜单。在此子菜单中,单击输入。在额外的在右侧的 Dependencies 文本字段中,输入以下文本:fltkd.lib wsock32.lib comctl32.lib fltkjpegd.lib fltkimagesd.lib[以下步骤可能是必须的,因为 il 现在是默认设置。]在忽略特定库文本字段中,输入以下文本:libcd.lib

  7. [此步骤可能是不必要的,因为/MDd 现在是默认值。]同一属性窗口的左侧菜单,dick C/C++ 展开不同的子菜单。单击代码生成子菜单项。在右边菜单,将 Runtime Library 下拉菜单更改为 Multi-threaded调试 DLL (/MDd)。单击“确定”关闭“属性”窗口。

在这一步中,我向新创建的项目添加了一个新项目(我将该项目命名为 testv.cpp)并粘贴了这段用于测试 FLTK 的简单代码:

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

//***************************

int main()
{
FI_Window window(200, 200, "Window title");
FL_Box box(O,O,200,200, "Hey, I mean, He llo, World! ");
window.show();
return Fl::run();
}

运行这个项目(按F5)后,出现了11个错误!他们在下面:

Error 1 error LNK2019: unresolved external symbol "public: static int __cdecl Fl::run(void)" (?run@Fl@@SAHXZ) referenced in function _main C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 2 error LNK2019: unresolved external symbol "protected: __thiscall Fl_Widget::Fl_Widget(int,int,int,int,char const *)" (??0Fl_Widget@@IAE@HHHHPBD@Z) referenced in function "public: __thiscall Fl_Box::Fl_Box(int,int,int,int,char const *)" (??0Fl_Box@@QAE@HHHHPBD@Z) C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 3 error LNK2019: unresolved external symbol "public: virtual __thiscall Fl_Widget::~Fl_Widget(void)" (??1Fl_Widget@@UAE@XZ) referenced in function "public: virtual __thiscall Fl_Box::~Fl_Box(void)" (??1Fl_Box@@UAE@XZ) C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 4 error LNK2001: unresolved external symbol "public: virtual void __thiscall Fl_Widget::resize(int,int,int,int)" (?resize@Fl_Widget@@UAEXHHHH@Z) C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 5 error LNK2001: unresolved external symbol "protected: virtual void __thiscall Fl_Box::draw(void)" (?draw@Fl_Box@@MAEXXZ) C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 6 error LNK2001: unresolved external symbol "public: virtual int __thiscall Fl_Box::handle(int)" (?handle@Fl_Box@@UAEHH@Z) C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 7 error LNK2019: unresolved external symbol "public: __thiscall Fl_Window::Fl_Window(int,int,char const *)" (??0Fl_Window@@QAE@HHPBD@Z) referenced in function _main C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 8 error LNK2019: unresolved external symbol "public: virtual __thiscall Fl_Window::~Fl_Window(void)" (??1Fl_Window@@UAE@XZ) referenced in function _main C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 9 error LNK2019: unresolved external symbol "public: virtual void __thiscall Fl_Window::show(void)" (?show@Fl_Window@@UAEXXZ) referenced in function _main C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\testv.obj

Error 10 error LNK2019: unresolved external symbol WinMain@16 referenced in function __tmainCRTStartup C:\Users\CS\documents\visual studio 2012\Projects\testv\testv\MSVCRTD.lib(crtexew.obj)

Error 11 error LNK1120: 10 unresolved externals C:\Users\CS\documents\visual studio 2012\Projects\testv\Debug\testv.exe

我认为问题与创建项目有关。在我从 Win32 Project 创建一个空项目后,我点击了 Add new item 并选择了 .cpp 类型。我不知道它是否正确。

有解决问题的想法吗?

最佳答案

您收到该错误是因为您在没有分隔符的情况下在一行中输入所有库名称。它将整个列表作为一个库。单击省略号,然后输入以换行符分隔的每个库名称。

使用 ws2_32.lib 而不是 wsock32.lib

关于c++ - 在 Visual Studio 2012 上安装和使用 FLTK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20946525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com