tightvnc 在 vs2015 下编译的问题
2016 年 06 月 08 日
tightvnc是一个vncserver/viewer的开源实现,但原始工程是在vs2012下编译通过的,在vs2015中由于一些改动,导致无法编译通过。需要做如下修改:
- 编译问题,viewer-core中的
RemoteViewerCore.cpp
中,1206行,需要把const char改成char - 链接问题,tvnviewer中,需要加入链接库
legacy_stdio_definitions.lib
- libjpeg-turbo链接问题,这个比较复杂,参考https://github.com/libjpeg-turbo/libjpeg-turbo/issues/45 ,有几种解决方案,我是选择了在vs2015下重编libjpeg-turbo,如下:
- 安装cmake和nasm,并将cmake和nasm加入path
- 下载libjpeg-turbo源码,https://github.com/libjpeg-turbo/libjpeg-turbo
- 用cmake生成vs2015版本的sln工程文件,这里可以参考
libjpeg-turbo/BUILDING.md
- 使用vs2015编译libjpeg-turbo,得到
debug/jpeg-static.lib
- 然后覆盖原来tightvnc目录下
libjpeg-turbo/jpeg-static.lib
即可,如需64位版本,则需将第3步重做一遍,只是cmake生成的地方选择生成64位版本的sln工程