FLTK介绍

FLTK (Fast Light Tool Kit 发音为fulltick) 是一种使用C++开发的GUI工具包,它可以应用于Unix,Linux,MS-Windows95/98/NT/2000和MacOS操作系统平台,相 对于其它的许多图形接口开发工具包(如MFC、GTK、QT等),它具有体积很小、速度比较快,且有着更好的移植性。

下载界面库

FLTK官网下载最新版本的源码(e.g. fltk-1.3.4-1-source.tar.gz)。解压源码文件到相应的目录,

C:\Users\yourname\Downloads\fltk-1.3.4

Build FLTK库

下面介绍如果再Visual Studio中Build Solution

  1. 找到工程文件夹。

    fltk-1.3.4\ide\VisualC2010
  2. 双击fltk.sln,耐心等待visual studio打开。
  3. Build菜单中找到 Configuration Manager并打开,切换到Release。
  4. Build菜单中找到 Rebuild Solution并点击,耐心等待Build完成。

将FLTK库添加到Visual Stidio中

Build成功之后我们需要做的就是把文件拷贝到相应的目录内。

  1. 复制 FL and GL 文件夹, 例如,

    C:\Users\yourname\Downloads\fltk-1.3.4\FL

    C:\Users\yourname\Downloads\fltk-1.3.4\GL

    到Visual Studio的$(VC_IncludePath)文件夹下

    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\include
  2. 复制lib文件夹下的所有文件,

    C:\Users\yourname\Downloads\fltk-1.3.4\lib

    到Visual Studio的$(VC_LibraryPath_x86) 文件夹下

    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\lib\x86

测试是否通过

重新打开Visual Studio 新建一个win32 project,在project wizard中选择Empty。

好了,现在我们新建一个main.cpp

#include <Windows.h> // include Windows.h only if using WinMain
#include <FL/Fl.H>
#include <FL/Fl_Box.H>
#include <FL/Fl_Window.H> // Use standard main to have console background:
// int main() // Use WinMain if you don't want the console in the background:
int __stdcall WinMain(
__in HINSTANCE hInstance,
__in_opt HINSTANCE hPrevInstance,
__in LPSTR lpCmdLine,
__in int nShowCmd
)
{
Fl_Window window( 200, 200, "My window title" );
Fl_Box box( 0, 50, 200, 20, "Hello" );
window.show();
return Fl::run();
}

项目右键Properties,需要做以下几个修改,需要注意的是Release和Debug都需要进行设置

Configuration Properties
C/C++
Code Generation
Runtime Library
Multi-threaded Debug DLL (/MDd)
Linker
Input
Additional Dependecies
fltk.lib
fltkimages.lib
fltkjpeg.lib
fltkpng.lib
fltkzlib.lib
fltkgl.lib
fltkforms.lib Ignore Specific Default Libraries
libcd.lib

现在我们可以Build并运行了,如果可以正常运行就表示我们安装成功了。

Visual Studio 编译使用FLTK库的更多相关文章

  1. Visual Studio 编译Winform程序不生成.vshost.exe和.pdb文件的方法

    问题:使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost.exe」和「.pdb」的文件. 先解释一下各个文件的作用: .pdb文件: ...

  2. 后台大哥请进一步:使用Visual Studio编译scss和souce map实现前后端的完美结合

    title: 后台大哥请进一步:使用Visual Studio编译scss和souce map实现前后端的完美结合 date: 2020-06-28 sidebarDepth: 2 tags: win ...

  3. Visual Studio 编译项目失败,提示找不到文件

     博客地址:http://blog.csdn.net/FoxDave 今天碰到了一个蠢问题,虽然咱们正常情况下是遇不到的,但这确实是个应该注意的地方,所以简单记录一下. Visual Studio ...

  4. Visual Studio命令行创建库文件lib

    Visual Studio命令行创建库文件lib OS:win7 旗舰版SP1 64位 编译器: VS 2013 express 的cl 建一个文件Static_Lib.h,源代码如下 #ifndef ...

  5. Windows 使用 Visual Studio 编译 caffe

    说明:最近看 caffe 发现在 github 上下载的源码没有windows版本的,需要自己生成项目文件才能用 Visual Studio 编译,这里记录一下生成Windows项目文件的方法以及编译 ...

  6. Visual Studio 编译后去掉只读属性

    Visual Studio 编译后去掉只读属性 attrib $(TargetPath) -R attrib $(TargetDir)$(TargetName).pdb -R

  7. Visual Studio编译Core程序部署到linux

    一.背景 随着微软拥抱开源,推出Net Core框架,目前已经支持跨平台,能部署到Linux.MacOS.Windows等系统上. 下面我们就来分享一下Visual Studio编译好的代码部署到Li ...

  8. 新手,Visual Studio 2015 配置Boost库,如何编译和选择,遇到无法打开文件“libboost_thread-vc140-mt-gd-1_63.lib“的解决办法

    1,到官网下载最新的boost,www.boost.org 这里我下载的1-63版本. 2,安装,解压后运行bootstrap.bat文件.稍等一小会就OK. 3,编译boost库.注意一定要使用VS ...

  9. 新手,Visual Studio 2013 配置Boost库,如何编译和选择

    QuantLib installation in VC++ 2010 and later 参考:http://quantlib.org/install/vc10.shtml 1,到官网下载最新的boo ...

随机推荐

  1. AndroidDemo - FloatWindowDemo

    安卓悬浮窗Demo 在桌面上创建一个小的悬浮窗.点击小悬浮窗后会弹出一个大的窗口.大窗口上有2个按键,分别为返回与关闭.点击大窗口外的部分能返回小窗口. 小窗口可以自由拖动.小窗口上显示的是当前内存使 ...

  2. 【css】盒子模型 之 概述

    摘要 一些基本的概念以及常见使用问题 概述 BFC 是css 中布局的核心 - 盒模型,根据块级元素及行级元素可分为块级容器, 行级容器,但容器内部都遵循 BFC BFC 空间布局 备注: IE 的盒 ...

  3. Python学习记录----类型匹配(转)

    import types aaa = 0 print type(aaa) if type(aaa) is types.IntType: print "the type of aaa is i ...

  4. Struts2 动态调用方法

    struts2动态调用方法有两种方式 方式一:用通配符进行调用: Action方法: package com.bjyinfu.struts.actions; public class CatchDyn ...

  5. js实现轮播图效果(附源码)--原生js的应用

    1.js实现轮播图效果 <!DOCTYPE html><html lang="en"><head> <meta charset=" ...

  6. 一步一步深入理解Dijkstra算法

    先简单介绍一下最短路径: 最短路径是啥?就是一个带边值的图中从某一个顶点到另外一个顶点的最短路径. 官方定义:对于内网图而言,最短路径是指两顶点之间经过的边上权值之和最小的路径. 并且我们称路径上的第 ...

  7. 根据百度,gps坐标获取天气

    楼主用的是阿里天气免费版,限制1000次,可以重复购买 下面放代码 var orgWindow = new OrganizeWindowProxy(WorkContext); var orgInfo ...

  8. nodeJS之crypto加密

    前面的话 加密模块提供了 HTTP 或 HTTPS 连接过程中封装安全凭证的方法.也提供了 OpenSSL 的哈希,hmac, 加密(cipher), 解密(decipher), 签名(sign) 和 ...

  9. 18. leetcode 387. First Unique Character in a String

    Given a string, find the first non-repeating character in it and return it's index. If it doesn't ex ...

  10. 移动玩具[HAOI2008]

    题目描述 在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩 ...