Quantcast
Channel: Cocos中文社区 - 最新主题
Viewing all articles
Browse latest Browse all 88737

cocos3d-js绑定到C++的问题求解

$
0
0

@yangjikai124 写道:

参照的链接:http://www.cocos2d-x.org/wiki/Binding_Custom_Class_To_Js_Runtime
在终端jsb绑定的时候没成功,我把错误贴一下,感觉可能是ini文件配置出错,找个大神帮我解决一下
PYTHON_BIN not defined, use current python.
generating userconf.ini...
Generating bindings for cocos2dx_experimental_webView...
Using userconfig
[('androidndkdir', '/Users/dodur/Documents/NDK_ROOT'), ('clangllvmdir', '/Users/dodur/Documents/NDK_ROOT/toolchains/llvm-3.6/prebuilt/darwin-x86_64'), ('creatordir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/cocos/editor-support/creator'), ('cocosdir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x'), ('jsbdir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/cocos/scripting/js-bindings'), ('cxxgeneratordir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/tools/bindings-generator'), ('extra_flags', ''), ('clang_include', 'lib/clang/3.6/include')]

.... Generating bindings for target spidermonkey

.... .... Processing section cocos2dx_experimental_webView

====
Errors in parsing headers:
1. location = ,
details = "'FLT_DIG' macro redefined">
2. location = ,
details = "'DBL_DIG' macro redefined">
3. location = ,
details = "'FLT_MAX' macro redefined">
4. location = ,
details = "'DBL_MAX' macro redefined">
5. location = ,
details = "'FLT_MIN' macro redefined">
6. location = ,
details = "'DBL_MIN' macro redefined">
====



Generating bindings for cocos2dx_custom...
Using userconfig
[('androidndkdir', '/Users/dodur/Documents/NDK_ROOT'), ('clangllvmdir', '/Users/dodur/Documents/NDK_ROOT/toolchains/llvm-3.6/prebuilt/darwin-x86_64'), ('creatordir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/cocos/editor-support/creator'), ('cocosdir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x'), ('jsbdir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/cocos/scripting/js-bindings'), ('cxxgeneratordir', '/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/tools/bindings-generator'), ('extra_flags', ''), ('clang_include', 'lib/clang/3.6/include')]
Traceback (most recent call last):
File "/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/tools/bindings-generator/generator.py", line 1544, in
main()
File "/Users/dodur/Desktop/testJSForCPP/build/jsb-default/frameworks/cocos2d-x/tools/bindings-generator/generator.py", line 1470, in main
raise Exception("No sections defined in config file")
Exception: No sections defined in config file


Generating javascript bindings fails.

另附加ini文件:
[cocos2dx_custom]

the prefix to be added to the generated functions. You might or might not use this in your own

templates

prefix = cocos2dx_custom

create a target namespace (in javascript, this would create some code like the equiv. to ns = ns || {})

all classes will be embedded in that namespace

target_namespace = cc

android_headers = -I%(androidndkdir)s/platforms/android-14/arch-arm/usr/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.8/include
android_flags = -D_SIZE_T_DEFINED_

clang_headers = -I%(clangllvmdir)s/lib/clang/3.3/include
clang_flags = -nostdinc -x c++ -std=c++11

cocos_headers = -I%(cocosdir)s/cocos -I%(cocosdir)s/my -I%(cocosdir)s/cocos/base -I%(cocosdir)s/cocos/platform/android
cocos_flags = -DANDROID -DCOCOS2D_JAVASCRIPT

cxxgenerator_headers =

extra arguments for clang

extra_arguments = %(android_headers)s %(clang_headers)s %(cxxgenerator_headers)s %(cocos_headers)s %(android_flags)s %(clang_flags)s %(cocos_flags)s %(extra_flags)s

what headers to parse

headers = %(cocosdir)s/cocos/my/CustomClass.h

what classes to produce code for. You can use regular expressions here. When testing the regular

expression, it will be enclosed in "^$", like this: "^Menu*$".

classes = CustomClass.*

what should we skip? in the format ClassName::[function function]

ClassName is a regular expression, but will be used like this: "^ClassName$" functions are also

regular expressions, they will not be surrounded by "^$". If you want to skip a whole class, just

add a single "" as functions. See bellow for several examples. A special class name is "", which

will apply to all class names. This is a convenience wildcard to be able to skip similar named

functions from all classes.

skip =

rename_functions =

rename_classes =

for all class names, should we remove something when registering in the target VM?

remove_prefix =

classes for which there will be no "parent" lookup

classes_have_no_parents =

base classes which will be skipped when their sub-classes found them.

base_classes_to_skip = Ref Clonable

classes that create no constructor

Set is special and we will use a hand-written constructor

abstract_classes =

Determining whether to use script object(js object) to control the lifecycle of native(cpp) object or the other way around. Supported values are 'yes' or 'no'.

script_control_cpp = no

有人帮忙解决一下吗,感觉ini文件出错,但不知道怎么配置:joy:

帖子: 3

参与者: 1

阅读整个主题


Viewing all articles
Browse latest Browse all 88737

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>