Android Question unexpected e_machine: 40

Discussion in 'Android Questions' started by Rusty, Feb 18, 2015.

  1. Rusty

    Rusty Well-Known Member Licensed User

    I am installing the exact same apk and so forth with the exact same zip file on 4 brand new Asus transformers. Three work great, but the fourth complains with the below when it is trying to open an SQLLite data base.
    All the machines are running KitKat.
    I can't make heads or tails of the below unfiltered log...
    Any ideas will be appreciated.
    Rusty
    Code:
    Main.SQLSurvey.initialize(Main.SDCard.data, Main.DBSurvey, False, Main.SqliteKey, File.DirAssets )
    Generates the following error(s)

    Code:
    LogCat connected to: B4A-Bridge: asus K010-
    --------- beginning of /dev/
    log/main
    Installing 
    file.
    GC_CONCURRENT freed 3956K, 
    46% free 5218K/9576K, paused 1ms+2ms, total 6ms
    GC_CONCURRENT freed 3972K, 
    46% free 5222K/9576K, paused 1ms+1ms, total 5ms
    PackageAdded: package:talkingsurvey.b4a.survey
    ** 
    Activity (main) Create, isFirst = true **
        TOTAL heap: 
    9195520
        REMAINING: 
    359856  Ticks: second 1000
          
    java.lang.UnsatisfiedLinkError: dlopen failed: 
    "/data/app-lib/talkingsurvey.b4a.survey-1/libdatabase_sqlcipher.so" has unexpected e_machine: 40
        at java.lang.Runtime.loadLibrary(Runtime.java:
    364)
        at java.lang.System.loadLibrary(System.java:
    526)
        at net.sqlcipher.database.SQLiteDatabase.loadLibs(SQLiteDatabase.java:
    144)
        at net.sqlcipher.database.SQLiteDatabase.loadLibs(SQLiteDatabase.java:
    137)
        at anyhwheresoftware.b4a.objects.sqlcipher.SQLCipher.Initialize(
    SQLCipher.java:50)
        at talkingsurvey.b4a.survey.fn._opendatabase(fn.java:
    4655)
        at talkingsurvey.b4a.survey.fn._buildcursor(fn.java:
    526)
        at talkingsurvey.b4a.survey.fn._ishelpavailable(fn.java:
    3791)
        at talkingsurvey.b4a.survey.main._xmlprofileparser_endelement(main.java:
    28289)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:
    515)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:
    187)
        at anywheresoftware.b4a.objects.SaxParser$MyHandler.endElement(
    SaxParser.java:121)
        at org.apache.harmony.xml.ExpatParser.endElement(ExpatParser.java:
    156)
        at org.apache.harmony.xml.ExpatParser.appendBytes(Native Method)
        at org.apache.harmony.xml.ExpatParser.parseFragment(ExpatParser.java:
    513)
        at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:
    474)
        at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:
    316)
        at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:
    279)
        at anywheresoftware.b4a.objects.SaxParser.parse(
    SaxParser.java:80)
        at anywheresoftware.b4a.objects.SaxParser.Parse(
    SaxParser.java:73)
        at talkingsurvey.b4a.survey.main._loadorganization(main.java:
    18451)
        at talkingsurvey.b4a.survey.main._activity_create(main.java:
    2308)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:
    515)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:
    187)
        at talkingsurvey.b4a.survey.main.afterFirstLayout(main.java:
    100)
        at talkingsurvey.b4a.survey.main.access$
    100(main.java:17)
        at talkingsurvey.b4a.survey.main$WaitForLayout.run(main.java:
    78)
        at android.os.Handler.handleCallback(Handler.java:
    733)
        at android.os.Handler.dispatchMessage(Handler.java:
    95)
        at android.os.Looper.loop(Looper.java:
    149)
        at android.app.ActivityThread.main(ActivityThread.java:
    5257)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:
    515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:
    794)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:
    610)
        at dalvik.system.NativeStart.main(Native Method)
     
  2. Erel

    Erel Administrator Staff Member Licensed User

    Have you tried to uninstall it and install it again?
     
  3. Rusty

    Rusty Well-Known Member Licensed User

    Yes, I've uninstalled, reinstalled several times. I've done factory resets twice with no changes.
    Have you seen anything like this before?
    Rusty
     
  4. thedesolatesoul

    thedesolatesoul Expert Licensed User

    Its an x86 device.
    - Are you sure the .so you are loading is compiled for x86 or ARM?
    - Do all the devices have identical HW and SW versions?
     
    NJDude likes this.
  5. Rusty

    Rusty Well-Known Member Licensed User

    As a matter of fact, these are the first INTEL devices I've used (android tablets)...
    The three that work have:
    Kernel version 3.10.20-g68a5f37 2.2.33.122#1 Wed Nov 5 00:23:02 CST 2014
    Build number WW-2.2.33.122 044000219_201403200251

    The one that doesn't work is:
    Kernel version 3.10.20-g5056b686 2.2.33.135#1 Wed Dec 10 21:34:39 CST 2014
    Build number WW-2.2.33.135 044000219_201403200251

    It does act like the SQLite and/or the SQLCipher (icudt46l.zip) might be the problem. I ran Erel's SQLite viewer on the tablet and it blows up too. correction: it does not blow up on the others...

    I'm not sure why on the three tablets with Intel chips it works but the 4th it doesn't.
    Is there a different sqlite or sqlcipher zip for intel chips? If so, why might the three other intel machines work with the android one...?
    Thanks,
    Rusty

    PS Forgive my ignorance, but what is the ".so you are loading"
     
    Last edited: Feb 18, 2015
  6. thedesolatesoul

    thedesolatesoul Expert Licensed User

    I guess at this point the .so doesnt matter. It does look like a bug creeped into the build you are currently running.
    I'm not really sure where the Android x86 are built from but it doesnt really matter as the kernel wouldnt be open source anyway.
    I suggest you try to update this faulty one to a newer FW version and try again.
     
    NJDude likes this.
  7. Rusty

    Rusty Well-Known Member Licensed User

    Thanks for that valuable advice.
    I've downloaded the latest FW version from the sqlcipher folks.
    I've copied the jar files into the libraries folder, I also put icudt46l.zip in the files folder, replacing the old one.
    Now, when I try to compile, it is saying:
    Code:
    B4A version 4.30
    Parsing code.                           
    1.10
    Compiling code.                         
    0.44
    Compiling layouts code.                 
    0.04
    Generating R 
    file.                      0.13
    Compiling generated Java code.          Error
    javac 
    1.7.0_21
    src\talkingsurvey\b4a\survey\
    archiver.java:93: error: package anyhwheresoftware.b4a.objects.sqlcipher does not exist
    public static anyhwheresoftware.b4a.objects.sqlcipher.SQLCipher _oldresponse = null;
                                                         ^
    Note: Some input files use 
    or override a deprecated API.
    Note: Recompile with -Xlint:deprecation 
    for details.
    Any advice on what I've done wrong?
    Thanks,
    Rusty
     
  8. thedesolatesoul

    thedesolatesoul Expert Licensed User

    Thats not what I meant. I meant you need to update your Transformer Tablet Firmware.
    The latest version on the Asus site seems to be 101 (although there is source available for 122), so I am not sure how you got 135.
    (The impressive thing is that there is also Kernel source code available for download!)
    http://www.asus.com/uk/Tablets/ASUS_Transformer_Pad_TF103C/HelpDesk_Download/
    But be careful, I carry no responsibility for this advice!!!
     
    NJDude likes this.
  9. Rusty

    Rusty Well-Known Member Licensed User

    wow, this is way over my pay-grade...
    If this tablet has 135 and the others have 122, but the latest version is 101...I'm lost as to how this can occur on a production system like Asus has...
    I have no idea how to "retro" the Kernels...
    ...not sure where to go from here.
    Thanks for you advice.
    Rusty
     
  10. thedesolatesoul

    thedesolatesoul Expert Licensed User

    Take this opportunity to upgrade your paygrade ;)
    I havent used Asus before, maybe they have a PC Software (like Samsung Kies etc), that lets you connect your device to the PC and get the firmware upgraded. There may be a different version available on that software.

    EDIT: Even maybe there is a different version available for your country (this is from the UK site).
     
    Last edited: Feb 18, 2015
    NJDude likes this.
  11. Rusty

    Rusty Well-Known Member Licensed User

    :) thanks for the promotion :)
    I'll look for the Asus software that will allow a firmware upgrade...or downgrade
    Thanks
    Rusty

    apparently you can't downgrade it:
    Code:
    Steps of Update:
    1. Check software version of your device**
    2. Download device software and Update SOP (From “Manual” Item)
    3. Only apply to same SKU update, Example: WW->WW, CN->CN, TW->TW.
    4. Software update cannot transfer the software SKU and downgrade the software version.
    5. Wrong SKU may cause update failure, please update the same SKU version only.
    *How 
    to know the device model?
    PathSettings->About-> Model number
    Example: ASUS PadFone2
    **How 
    to know the device software version?
    PathSettings->About-> software information->Build number
    Example: CHT_PadFone2-user-
    10.4.17.15-UpdateLauncher
    *System upgrade may cause 
    part of data missing, please buckup your important data before system upgrading.
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice