j2objc Compile error: Undefined symbols for archit

2019-09-10 06:10发布

问题:

i get the following error when i run j2objcc -o blssmibi BLSSMIBI.o

Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_Curve", referenced from: objc-class-ref in BLSSMIBI.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

what should i do to fix this?

回答1:

There's no Curve class anywhere in j2objc's libraries, so my guess it's a dependency from the Java file that you used to generate BLSSMIBI (maybe that's the it looks like a package prefix was used). If you aren't sure what a class's dependencies are, try compiling with javac to a temporary directory and see what name.class files are created (ignore the ones with $ in their names, as they're inner classes). That list of class files is used to figure out all the classes that need transpiling, as well as all the .o files that the app requires.