hxcpp icon indicating copy to clipboard operation
hxcpp copied to clipboard

Linker Error : file not recognized: File format not recognized

Open darmie opened this issue 5 years ago • 3 comments

I am trying to build a dynamic library for android target, I am getting this error below

obj/android-opt-64/8a3cb82e___boot__.obj: file not recognized: File format not recognized

Full details

Link: liboutput-64.so

Android (5900059 based on r365631c) clang version 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 207d7abc1a2abf3ef8d4301736d6a7ebc224a290) (based on LLVM 9.0.8svn)
Target: aarch64-unknown-linux-android21
Thread model: posix
InstalledDir: /Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin
Found candidate GCC installation: /Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9.x
Selected GCC installation: /Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9.x
Candidate multilib: .;@m64
Selected multilib: .;@m64
 "/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld" -z noexecstack -EL --fix-cortex-a53-843419 --warn-shared-textrel -z now -z relro -z max-page-size=4096 --hash-style=both --enable-new-dtags --eh-frame-hdr -m aarch64linux -shared -o liboutput-64.so /Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../sysroot/usr/lib/aarch64-linux-android/21/crtbegin_so.o -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/lib64/clang/9.0.8/lib/linux/aarch64 -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9.x -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/lib/../lib64 -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../sysroot/usr/lib/aarch64-linux-android/21 -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../sysroot/usr/lib/aarch64-linux-android -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/lib -L/Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../sysroot/usr/lib obj/android-opt-64/8a3cb82e___boot__.obj obj/android-opt-64/47cbd1bd_ReactBuild.obj obj/android-opt-64/b512af81_TestModule.obj obj/android-opt-64/8a3cb82e_Std.obj obj/android-opt-64/870a898c_NoFiles.obj obj/android-opt-64/74e70d0b_Log.obj obj/android-opt-64/8a3cb82e___resources__.obj obj/android-opt-64/3ac6c7ac___main__.obj obj/android-opt-64/33c13d14_Array.obj obj/android-opt-64/9c1b8c6c_Interface.obj obj/android-opt-64/9c1b8c6c_Boot.obj obj/android-opt-64/9c1b8c6c_Date.obj obj/android-opt-64/9c1b8c6c_Object.obj obj/android-opt-64/9c1b8c6c_Anon.obj obj/android-opt-64/33c13d14_Enum.obj obj/android-opt-64/9c1b8c6c_AndroidCompat.obj obj/android-opt-64/9c1b8c6c_CFFI.obj obj/android-opt-64/9c1b8c6c_Class.obj obj/android-opt-64/33c13d14_Dynamic.obj obj/android-opt-64/b2d96680_GcRegCapture.obj obj/android-opt-64/33c13d14_Math.obj obj/android-opt-64/9c1b8c6c_Hash.obj obj/android-opt-64/9c1b8c6c_Thread.obj obj/android-opt-64/b2d96680_Immix.obj obj/android-opt-64/9c1b8c6c_Lib.obj obj/android-opt-64/9c1b8c6c_StdLibs.obj obj/android-opt-64/9c1b8c6c_Debug.obj obj/android-opt-64/b2d96680_GcCommon.obj obj/android-opt-64/33c13d14_String.obj -llog -Bstatic -lc++ -Bdynamic -lm -lgcc -ldl -lc -lgcc -ldl /Volumes/Vibranium/Users/damilare/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/../sysroot/usr/lib/aarch64-linux-android/21/crtend_so.o
obj/android-opt-64/8a3cb82e___boot__.obj: file not recognized: File format not recognized
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
Failed to invoke `haxelib run-dir hxcpp /Volumes/Vibranium/Users/damilare/haxe/haxe_libraries/hxcpp/4.0.64/haxelib Build.xml haxe -D-verbose=1 -DHXCPP_ARM64=1 -DHXCPP_OPTIMIZE_LINK=1 -D_verbose=1 -Dandroid=1 -Ddynamic_link=1 -Dhaxe=4.0.5 -Dhaxe3=1 -Dhaxe4=1 -Dhaxe_ver=4.005 -Dhxcpp_api_level=400 -Dhxcpp_smart_strings=1 -Dno-debug=1 -Dno_debug=1 '-Dsource-header=Generated by Haxe 4.0.5' -Dstatic=1 -Dtarget.name=cpp -Dtarget.static=true -Dtarget.sys=true -Dtarget.threaded=true -Dtarget.unicode=true -Dtarget.utf16=true -Dutf16=1 -I/Volumes/Vibranium/Workspace/Zenturi/project/Mandolin/src/ -I -I/Volumes/Vibranium/Users/damilare/haxe/versions/4.0.5/std/cpp/_std/ -I/Volumes/Vibranium/Users/damilare/haxe/versions/4.0.5/std/` because Error: Command failed: haxelib run-dir hxcpp /Volumes/Vibranium/Users/damilare/haxe/haxe_libraries/hxcpp/4.0.64/haxelib Build.xml haxe -D-verbose=1 -DHXCPP_ARM64=1 -DHXCPP_OPTIMIZE_LINK=1 -D_verbose=1 -Dandroid=1 -Ddynamic_link=1 -Dhaxe=4.0.5 -Dhaxe3=1 -Dhaxe4=1 -Dhaxe_ver=4.005 -Dhxcpp_api_level=400 -Dhxcpp_smart_strings=1 -Dno-debug=1 -Dno_debug=1 '-Dsource-header=Generated by Haxe 4.0.5' -Dstatic=1 -Dtarget.name=cpp -Dtarget.static=true -Dtarget.sys=true -Dtarget.threaded=true -Dtarget.unicode=true -Dtarget.utf16=true -Dutf16=1 -I/Volumes/Vibranium/Workspace/Zenturi/project/Mandolin/src/ -I -I/Volumes/Vibranium/Users/damilare/haxe/versions/4.0.5/std/cpp/_std/ -I/Volumes/Vibranium/Users/damilare/haxe/versions/4.0.5/std/
Error: Build failed
Error: Command failed with error 1

My build.hxml file

-dce full
-cpp bin/react/Mandolin_64
-D -verbose
-D no-debug
-D android 
-D dynamic_link 
-D HXCPP_ARM64
-D HXCPP_OPTIMIZE_LINK
-D PLATFORM=android-21

darmie avatar Apr 16 '20 14:04 darmie

Please I need help urgently :'(

darmie avatar Apr 17 '20 11:04 darmie

So I tried to link an external C++ project against hxcpp generated static library, but I keep getting this error:

error: unknown type name 'co'
  HX_DECLARE_CLASS5(co,zenturi,mandolin,xnative,react,IJavascriptArray)

darmie avatar Apr 17 '20 12:04 darmie

So it's been a while, but was wondering if this is still a problem. The first bit looks like a corrupt file - maybe a compilation was terminated. I would try removing the obj directory and trying again. The second part looks like a header file in missing or somehow not included, and I would beed to know more about the project setup.

hughsando avatar Dec 07 '20 14:12 hughsando