Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Native Development

Reply
Highlighted
Developer
Posts: 139
Registered: ‎05-24-2011
My Device: Z30 running 10.2 and Playbook 4GLTE running OS2.1
My Carrier: rogers
Accepted Solution

Invalid asset path

hey gang,

 

I'm trying to export a release build, and when i click the link Export Release Build from the bar-descriptor.xml general tab, it fails with error:

 

Packaging failed:1
Error: Invalid asset path "arm/o.le-v7/myapp.so"
(Time of error: 4 October, 2013 10:12:25 PM ED

 

I found a few other threads about this in the forums, but nothing seems to work, and I don't quite understand what the issue is.  I already tried copying the code to a new project, but I still have the same error.

 

http://supportforums.blackberry.com/t5/Native-Development/so-File-Not-Found/td-p/2578891/highlight/t...
http://supportforums.blackberry.com/t5/Native-Development/Can-t-export-for-release/m-p/2091503#M1123...

 

There's references to   http://developer.blackberry.com/cascades/documentation/getting_started/tools/compiling.html   that say to add this to the .pro file;

 

device {
    CONFIG(release, debug|release) {
        DESTDIR = o.le-v7
        TEMPLATE=lib
        QMAKE_CXX_FLAGS += -fvisible
    }

 

but reading the linked page seems to imply this was for an older version of the API (10.0) and is not necessary if i'm starting fresh on 10.1
 
can someone explain this in a way that i can understand? 
 
I'd be happy with just a solution too, but i'd really like to learn what i'm doing wrong.
 
thanks!
 
J
bron: a cron-like scheduler for BlackBerry 10
http://apps.oddelement.com
Developer
Posts: 139
Registered: ‎05-24-2011
My Device: Z30 running 10.2 and Playbook 4GLTE running OS2.1
My Carrier: rogers

Re: Invalid asset path

[ Edited ]

I was able to get the Export build to work by editing the bar-descriptor.xml as follows:

 

    <configuration name="Device-Release">
       <entryPointType>Qnx/Cascades</entryPointType>
       <platformArchitecture>armle-v7</platformArchitecture>
       <asset path="arm/o.le-v7-g/myApp" entry="true" type="Qnx/Elf">myApp</asset>
    </configuration>

 the original section looked like this:

 

    <configuration name="Device-Release">
       <entryPointType>Qnx/Cascades</entryPointType>
       <platformArchitecture>armle-v7</platformArchitecture>
       <asset path="arm/o.le-v7/myApp.so" entry="true" type="Qnx/Elf">myApp.so</asset>
    </configuration>

 The difference, for clarity is that the original one had ".so" appened to myApp, and also, the asset path in the original one is "arm/o.le-v7/", but the myApp binary doesn't exist in that directory, so I i changed it to "arm/o.le-v7-g" where the binary does exist.   This allows me to export a release, but when i test the resulting bar file by sideloading it, the app starts, requests the various permissions it needs, then disappears/crashes.  subsequent attempts to run the app result in nothing happening.  no window opens, nothing.

 

One other note, I tried to ensure that I can build cleanly with the Device-Release target, but as soon as I compile, it switches itself to Device-Debug.  I don't know why.  when i say switches, i mean that if i do this:

 

-change Target to Device-Release

-build

-check the Target, it's now set to Device-Debug

 

:confused:

 

help?

bron: a cron-like scheduler for BlackBerry 10
http://apps.oddelement.com
Developer
Posts: 139
Registered: ‎05-24-2011
My Device: Z30 running 10.2 and Playbook 4GLTE running OS2.1
My Carrier: rogers

Re: Invalid asset path

ok, i figured it out.  I noticed that even when running the Device-Release target, the command line was calling the Device-Debug target.  This appeared at the beginning of the make run: 

 

make -j4 Device-Debug

 so, I went into the bar-descriptor.xml, Assets tab, then went into the C/C++ Build Settings.

 

from there, I went to the Device-Release configuration and changed:

 

Build on Resource Save (Auto Build): Device-Release   --> this was set to Device-Debug, even for the Release target

Build (incremental build): Device-Release   --> this was also set to Device-Debug, even for the release target

 

saved the settings, set target to Release, build, and all is good.

 

This also allows me to get the Export Release working too!

 

Thanks Me!

 

bron: a cron-like scheduler for BlackBerry 10
http://apps.oddelement.com