0

It looks like the core Alljoyn Android SDK only ships with a library for the ARM architecture. When I try running it on my emulator which uses x86. I get an UnsatisfiedLinkError

````

06-16 16:43:43.547 3015-3015/? E/AndroidRuntime: FATAL EXCEPTION: main
                                                 Process: org.alljoyn.bus.sample.chat, PID: 3015
                                                 java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/org.alljoyn.bus.sample.chat-1/lib/x86/liballjoyn_java.so" has unexpected e_machine: 40
                                                     at java.lang.Runtime.loadLibrary(Runtime.java:372)
                                                     at java.lang.System.loadLibrary(System.java:1076)
                                                     at org.alljoyn.bus.sample.chat.AllJoynService.<clinit>(AllJoynService.java:1269)
                                                     at java.lang.Class.newInstance(Native Method)
                                                     at android.app.ActivityThread.handleCreateService(ActivityThread.java:2859)
                                                     at android.app.ActivityThread.-wrap4(ActivityThread.java)
                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1427)
                                                     at android.os.Handler.dispatchMessage(Handler.java:102)
                                                     at android.os.Looper.loop(Looper.java:148)
                                                     at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

````

Does Alljoyn support different architectures? If so, how do you build it for a different one?

jacobduron
  • 431
  • 9
  • 20
  • I would expect to do it with this command: `scons OS=android CPU=x86` – Lino Jun 17 '16 at 06:48
  • @jacobduron I had this problem, I simply used the ARM compiled library on the x86 and it worked properly so far. If you are using Android Studio, pasting the .so files in jniLibs/x86 should do it. – Davi S. Jun 22 '16 at 21:26

0 Answers0