klayge 4.2.0 编译vc9
CMake Error at CMakeLists.txt:442 (ADD_PRECOMPILED_HEADER):
Unknown CMake command "ADD_PRECOMPILED_HEADER".
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as
cmake_minimum_required(VERSION 2.8)
should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.
Configuring incomplete, errors occurred!
CMake Error at CMakeLists.txt:442 (ADD_PRECOMPILED_HEADER):
Unknown CMake command "ADD_PRECOMPILED_HEADER".
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as
cmake_minimum_required(VERSION 2.8)
should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.
Configuring incomplete, errors occurred!
CMake Error at CMakeLists.txt:28 (ADD_DEPENDENCIES):
add_dependencies called with incorrect number of arguments
CMake Error at CMakeLists.txt:30 (SET_TARGET_PROPERTIES):
set_target_properties called with incorrect number of arguments.
CMake Error at CMakeLists.txt:45 (ADD_POST_BUILD):
Unknown CMake command "ADD_POST_BUILD".
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as
cmake_minimum_required(VERSION 2.8)
should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.
Configuring incomplete, errors occurred!
上面有一堆cmake的错误
是我在用build_all.py运行失败之后自己尝试用cmake配置产生的
这些只是因为。。cmake 没用最新版
我使用的cmake 2.8.2
---------------------------------------------------------------------
错误 1 error C2679: 二进制“=”: 没有找到接受“const KlayGE::InputActionMap”类型的右操作数的运算符(或没有可接受的转换) \KlayGE_4_2_0\External\boost\boost\container\detail\pair.hpp 203
错误 25 error C2220: 警告被视为错误 - 没有生成“object”文件 KlayGE_4_2_0\KlayGE\Core\Src\KGEConfig\KGEConfig.cpp 786
这些是在klayGe生成时的错误
是因为vc9的缘故 用vc10/11就不会这样
http://www.opengpu.org/forum.php?mod=viewthread&tid=9659
所以正确的安装方法应该是
1 下载最新 python 和cmake 安装
2 解压klayge
3 cfg_build.py 里面修改成适合自己的配置(可选)
compiler = "vc9" # could be "vc11", "vc10", "vc9", "mingw", "auto".
arch = ("x86", ) # could be "x86", "x64", "arm_app", "x86_app"
config = ("Debug", "RelWithDebInfo") # could be "Debug", "Release", "MinSizeRel", "RelWithDebInfo"
4运行build_all.py
这里用vc9会遇到很多错误 1 error C2679: 二进制“=”: 这样的问题
需要修改
错误 4 error C2039: “i”: 不是“MeshMLLib::MathLib::recip_sqrt::FNI”的成员 e:\KlayGE_4_2_0\MeshMLLib\src\MeshMLLib.cpp 114
union FNI
{
float f;
int32_t i;
} fni;
fni.f = number; // evil floating point bit level hacking
fni.i = 0x5f375a86 - (fni.i >> 1); // what the fuck?
fni.f = fni.f * (threehalfs - (x2 * fni.f * fni.f)); // 1st iteration
fni.f = fni.f * (threehalfs - (x2 * fni.f * fni.f)); // 2nd iteration, this can be removed
return fni.f;
}
int32_t vc9不认识 改成int
----------------------------------------------------------
改完以上两个地方 编译klayge还有如下几个错误
警告 5 warning C4985: “WinMain”: 以前的声明上不存在属性。 e:\KlayGE_4_2_0\KlayGE\Core\Src\KGEConfig\KGEConfig.cpp 786
错误 2 error C2220: 警告被视为错误 - 没有生成“object”文件 e:\KlayGE_4_2_0\KlayGE\Core\Src\KGEConfig\KGEConfig.cpp 786
错误 4 fatal error C1083: 无法打开包括文件:“KHR/khrplatform.h”: No such file or directory E:\KlayGE_4_2_0\glloader\include\glloader\glloader.h 64
这个是少EGL要用的就装上
错误 1 fatal error LNK1181: 无法打开输入文件“libvorbis_static_d.lib” KlayGE_AudioDataSource_OggVorbis
--\KlayGE_4_2_0\External\libvorbis\libs\Win32
这个下面生成的libvorbis_static.lib 复制下改名libvorbis_static_d.lib
libvorbisfile_static.lib 复制下改名libvorbisfile_static_d.lib
警告 1 warning LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library KlayGE_AudioDataSource_OggVorbis
把#ifdef _In_
int WINAPI WinMain(_In_ hInstance, _In_op_ /*hPrevInstance*/, LPSTR /*lpszCmdLine*/, int /*nCmdShow*/)
#else
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPSTR /*lpszCmdLine*/, int /*nCmdShow*/)
#endif
改成
#ifdef _In_
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPSTR /*lpszCmdLine*/, int /*nCmdShow*/)
#else
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPSTR /*lpszCmdLine*/, int /*nCmdShow*/)
#endif
klayge 4.2.0 编译vc9的更多相关文章
- CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14
准备篇: CentOS 7.0系统安装配置图解教程 http://www.osyunwei.com/archives/7829.html 一.配置防火墙,开启80端口.3306端口 CentOS 7. ...
- centos 7.0 编译安装php 7.0.3
php下载页面 http://cn2.php.net/downloads.php 7.0.3多地区下载页面 http://cn2.php.net/get/php-7.0.3.tar.gz/from/a ...
- Valgrind 3.11.0编译安装
Valgrind 3.11.0编译安装 Valgrind是一款用于内存调试.内存泄漏检测以及性能分析的软件开发工具. Valgrind遵守GNU通用公共许可证条款,是一款自由软件. 到3.3.0版本为 ...
- android5.0 编译
android5.0编译需要jdk1.7版本,将来本地可能需要同时维护两套jdk版本,请参考: 在线安装openjdk1.7 sudo apt-get install openjdk-7-jre op ...
- VC6.0编译boost
今天学习了下VC6.0下boost的编译,只是对regex进行了编译,据说全部编译需要2个多小时,在此记录下学习过程中遇到的问题以便今后查看. 最开始直接从网上(www.boost.org)下载了当前 ...
- hadoop2.1.0编译安装教程
由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...
- hadoop2.1.0和hadoop2.2.0编译安装教程
由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...
- Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面
Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面.上网问了问百 ...
- varnish 4.0编译安装小记
varnish 4.0 编译问题 centos-6.5 x86环境 装varnish遇到几个错误要先安装python-docutils然后提示error1,于是安装:libedit-devel然后提示 ...
随机推荐
- Javascript之计时
// <!DOCTYPE html> <meta http-equiv="Content-Type" content="text/html; chars ...
- JavaScript之可运行按钮
看到好多大神都写了像这种在页面"可运行"的Javascript脚本,感觉很好奇,所以我今天也试着写了一个. 自从有了这个"可运行"按钮,好多代码就再也不以图片的 ...
- 【转】预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)
用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反) 解决方法: 建工程时 建立空项目 或者在项目设置里关闭预编 ...
- 如何把网站及数据库部署到Windows Azure
http://edi.wang/Post/2014/1/1/deploying-website-with-db-to-azure-custom-domain
- (转)linux TOP命令各参数详解【转载】
实时监控或查看系统资源使用情况的工具——TOP top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. 下面详细介绍它的使用方法: ( ...
- java新手笔记33 多线程、客户端、服务器
1.Mouse package com.yfs.javase; public class Mouse { private int index = 1; private boolean isLive = ...
- [EAP]将hostapd作为radius服务器搭建EAP认证环境
文章主要由以下几部分组成: 0.概念理解: WPA/WPA2,EAP,IEEE, 802.11i, WiFi联盟, 802.1x 1.编译hostapd 2.配置hostapd的conf文件 3.外接 ...
- KMeans聚类算法Hadoop实现
Assistance.java 辅助类,功能详见注释 package KMeans; import org.apache.hadoop.conf.Configuration; import org. ...
- Linux--fedora21 PC机安装以及拨号上网和无限上网
最近回家,学习许久未用的linux,之前也是在培训的时候用的是 ubuntu ,这次回家查了下 fedora 最适合开发人员使用,所以就装了个试试.刚开始只能拨号上网,经过三天时间的各种搜索查找终于解 ...
- 有很多10或100开头的IP在频繁访问ECS的原因
http://help.aliyun.com/knowledge_detail.htm?spm=5176.7114037.1996646101.1.PcbeK6&categoryId=8314 ...