zoukankan      html  css  js  c++  java
  • 解决Cygwin编译cocos2dx 遇到的 error: 'UINT64_C' was not declared in this scope 问题

    环境工具:Win10、VS2013、cocos2d-x-2.2.6、Cygwin、ADT

    问题来源:写了一个小游戏,VS2013上运行成功,就尝试着打包apk,项目导入到ADT里面,添加了cocos2dx lib库以后,讨厌的红x消失,下来就是在cygwin里面预编译得到xxx.so文件了,但是问题来了,报错!!!

    jni/../../Classes/GameLayer.cpp:227:46: error: 'UINT64_C' was not declared in this scope

    怎么解决呢?

    看了一下'UINT64_C'的定义文件 stdint.h 路径显示是vs自带的,好像有点复杂了

    那'UINT64_C'是什么呢?

    经过查资料,简单的说,是一种数据类型,编译的时候默认是C文件来编译的,但是我用的是C++,错误便出现了。

    既然是在打包apk的路上出的错,问题差不多就得往这方面考虑解决,于是查资料了解到

    LOCAL_CFLAGS变量为C/C++编译器定义额外的标志,当编译C/C++源文件时传递一个可选的编译器标志,这对于指定额外的宏定义或编译选项很有用。

    解决方案:

    在Android.mk文件里添加:

    LOCAL_CFLAGS := -D__STDC_CONSTANT_MACROS

    问题得以解决。

  • 相关阅读:
    JSON
    robotframework常见的问题
    robotframework——excel处理方法
    robotframework获得随机数字的方法
    robotframework定位动态元素
    robotframework的关键字区分大小写的问题
    自动化测试相关知识
    ride控制台乱码的解决方法
    xpath定位兄弟元素
    python——运算
  • 原文地址:https://www.cnblogs.com/revenge/p/5585961.html
Copyright © 2011-2022 走看看