• 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_0Externaloostoostcontainerdetailpair.hpp 203

    错误 25 error C2220: 警告被视为错误 - 没有生成“object”文件 KlayGE_4_2_0KlayGECoreSrcKGEConfigKGEConfig.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_0MeshMLLibsrcMeshMLLib.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_0KlayGECoreSrcKGEConfigKGEConfig.cpp 786

    错误 2 error C2220: 警告被视为错误 - 没有生成“object”文件 e:KlayGE_4_2_0KlayGECoreSrcKGEConfigKGEConfig.cpp 786

    错误 4 fatal error C1083: 无法打开包括文件:“KHR/khrplatform.h”: No such file or directory E:KlayGE_4_2_0glloaderincludeglloaderglloader.h 64

    这个是少EGL要用的就装上

    错误 1 fatal error LNK1181: 无法打开输入文件“libvorbis_static_d.lib” KlayGE_AudioDataSource_OggVorbis

    --KlayGE_4_2_0ExternallibvorbislibsWin32

    这个下面生成的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

  • 相关阅读:
    如何追MM?
    梦里蓝天
    数据仓库USEFUL LINKS(不断更新中)
    The day of blog
    Data Warehouse Architectures in an Internet Age
    数据仓库的数据存储 [转]
    阿里汉的7宗罪
    数据仓库中的一些争议之我见(一)
    java 字符串替换,分割基础
    java 时间比较随笔
  • 原文地址:https://www.cnblogs.com/minggoddess/p/3149965.html
Copyright © 2020-2023  润新知