# Failed to install a native app into webOS (raspberrypi4)

**URL:** <https://forum.webosose.org/t/failed-to-install-a-native-app-into-webos-raspberrypi4/1572>\
**Category:** App Development\
**Created:** [September 29, 2021, 5:13am UTC](https://forum.webosose.org/t/failed-to-install-a-native-app-into-webos-raspberrypi4/1572 "2021-09-29T05:13:43Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![eidola](https://avatars.discourse-cdn.com/v4/letter/e/9de0a6/32.png) [@eidola](https://forum.webosose.org/u/eidola)\
**Post date:** [September 29, 2021, 5:13am UTC](https://forum.webosose.org/t/failed-to-install-a-native-app-into-webos-raspberrypi4/1572/1 "2021-09-29T05:13:43Z")

</div>

Hi,  
I met an error while install a "external native app" to webOS (raspberrypi4).

My steps are the followings:

1. Setup all dev environment

1. build webOS OSE image and flashing sd card  
--\> raspberrypi4 boot up success

1. install ares cli, install "external web-app"  
--\> ares-pacakge, ares-install, ares-launch all work well with "web-app sample example"

2. build NDK toolchain for rpi4  
--\> install ndk, execute environment-setup

3. build "external native app"  
--\> cmake, make success

4. ares-package done

5. ares-install failed with error code -5

log ::  
ares-install verb argv {  
ares-install verb argv device: 'rpi4',  
ares-install verb argv level: 'verbose',  
ares-install verb argv argv: {  
ares-install verb argv remain: ['./com.sample.waylandegl\_0.0.1\_arm.ipk'],  
ares-install verb argv cooked: [  
ares-install verb argv '--device',  
ares-install verb argv 'rpi4',  
ares-install verb argv './com.sample.waylandegl\_0.0.1\_arm.ipk',  
ares-install verb argv '--level',  
ares-install verb argv 'verbose'  
ares-install verb argv ],  
ares-install verb argv original: ['-d', 'rpi4', './com.sample.waylandegl\_0.0.1\_arm.ipk', '-v']  
ares-install verb argv }  
ares-install verb argv }  
ares-install info install(): pkgPath: ./com.sample.waylandegl\_0.0.1\_arm.ipk  
ares-install info installer#install(): installing ./com.sample.waylandegl\_0.0.1\_arm.ipk  
ares-install info novacom.Session() opening session to 'rpi4'  
ares-install verb Resolver#load()  
ares-install verb Resolver#load#\_replaceBuiltinSshKey()  
ares-install verb Resolver#load#\_adjustList()  
ares-install verb Resolver#load#\_loadString()  
ares-install verb Resolver#\_loadOne() Regist privateKey : need to set a SSH private key in /home/eidola/.ssh for'rpi4'  
...  
...  
ares-install verb Session#begin() ssh session event: connected  
ares-install verb Session#run() cmd=/bin/rm -rf /media/developer/temp && /bin/mkdir -p /media/developer/temp && /bin/chmod 777 /media/developer/temp, opt={}  
ares-install verb Session#run() exec cmd=/bin/rm -rf /media/developer/temp && /bin/mkdir -p /media/developer/temp && /bin/chmod 777 /media/developer/temp, opt={}, err:undefined  
ares-install verb Session#run() event EOF from (cmd: /bin/rm -rf /media/developer/temp && /bin/mkdir -p /media/developer/temp && /bin/chmod 777 /media/developer/temp)  
ares-install verb Session#run() event exit code=0, signal=undefined (cmd: /bin/rm -rf /media/developer/temp && /bin/mkdir -p /media/developer/temp && /bin/chmod 777 /media/developer/temp)  
ares-install verb Session#run() event close (cmd: /bin/rm -rf /media/developer/temp && /bin/mkdir -p /media/developer/temp && /bin/chmod 777 /media/developer/temp)  
Installing package ./com.sample.waylandegl\_0.0.1\_arm.ipk  
ares-install verb Session#put() uploding into device: /media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk from host: ./com.sample.waylandegl\_0.0.1\_arm.ipk  
ares-install verb Session#put() sftpPut() :: start  
...  
...  
ares-install verb installer#install(): lineObj: {"statusValue":35,"details":{"packageId":"","verified":false,"installBasePath":"","client":"com.webos.lunasendpub-29032","state":"ipk parsing","ipkUrl":"/media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk"},"id":"com.ares.defaultName"}  
ares-install verb installer#install(): waiting  
ares-install verb luna#send() err: null value: null  
ares-install verb luna#send() JSON line:  
ares-install verb Session#run() on data (stdout)  
ares-install verb luna#send() JSON line: {"statusValue":37,"details":{"packageId":"com.sample.waylandegl","verified":false,"installBasePath":"/media/developer","client":"com.webos.lunasendpub-29032","state":"ipk parsing","ipkUrl":"/media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk"},"id":"com.ares.defaultName"}  
ares-install verb luna#send() JSON object: {  
ares-install verb luna#send() statusValue: 37,  
ares-install verb luna#send() details: {  
ares-install verb luna#send() packageId: 'com.sample.waylandegl',  
ares-install verb luna#send() verified: false,  
ares-install verb luna#send() installBasePath: '/media/developer',  
ares-install verb luna#send() client: 'com.webos.lunasendpub-29032',  
ares-install verb luna#send() state: 'ipk parsing',  
ares-install verb luna#send() ipkUrl: '/media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk'  
ares-install verb luna#send() },  
ares-install verb luna#send() id: 'com.ares.defaultName'  
ares-install verb luna#send() }  
...  
...  
ares-install verb luna#send() JSON line: {"statusValue":24,"details":{"packageId":"com.sample.waylandegl","reason":"FAILED\_IPKG\_INSTALL","ipkUrl":"/media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk","state":"install failed","verified":false,"installBasePath":"/media/developer","client":"com.webos.lunasendpub-29032","errorCode":-5},"id":"com.ares.defaultName"}  
ares-install verb luna#send() JSON object: {  
ares-install verb luna#send() statusValue: 24,  
ares-install verb luna#send() details: {  
ares-install verb luna#send() packageId: 'com.sample.waylandegl',  
ares-install verb luna#send() reason: 'FAILED\_IPKG\_INSTALL',  
ares-install verb luna#send() ipkUrl: '/media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk',  
ares-install verb luna#send() state: 'install failed',  
ares-install verb luna#send() verified: false,  
ares-install verb luna#send() installBasePath: '/media/developer',  
ares-install verb luna#send() client: 'com.webos.lunasendpub-29032',  
ares-install verb luna#send() errorCode: -5  
ares-install verb luna#send() },  
ares-install verb luna#send() id: 'com.ares.defaultName'  
ares-install verb luna#send() }  
ares-install verb installer#install(): lineObj: {"statusValue":24,"details":{"packageId":"com.sample.waylandegl","reason":"FAILED\_IPKG\_INSTALL","ipkUrl":"/media/developer/temp/com.sample.waylandegl\_0.0.1\_arm.ipk","state":"install failed","verified":false,"installBasePath":"/media/developer","client":"com.webos.lunasendpub-29032","errorCode":-5},"id":"com.ares.defaultName"}  
ares-install verb installer#install(): failure  
ares-install info errMsgHdlr#getErrMsg(): errKey: FAILED\_CALL\_LUNA option: FAILED\_IPKG\_INSTALL value: null heading: com.webos.appInstallService  
ares-install info errMsgHdlr#getErrStr(): errKey: FAILED\_CALL\_LUNA option: FAILED\_IPKG\_INSTALL value: null  
ares-install info errMsgHdlr#getErrStr(): errKey: FAILED\_IPKG\_INSTALL option: value:  
ares-install verb luna#send() err: [  
ares-install verb luna#send() Error  
ares-install verb luna#send() at new CLIError (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/error-handler.js:231:22)  
ares-install verb luna#send() at Object.errMsgHdlr.getErrMsg (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/error-handler.js:173:29)  
ares-install verb luna#send() at /usr/lib/node\_modules/@webosose/ares-cli/lib/install.js:230:46  
ares-install verb luna#send() at \_onLine (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/luna.js:92:25)  
ares-install verb luna#send() at Array.forEach ()  
ares-install verb luna#send() at \_onData (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/luna.js:74:36)  
ares-install verb luna#send() at Channel. (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/novacom.js:887:56)  
ares-install verb luna#send() at Channel.emit (events.js:400:28)  
ares-install verb luna#send() at addChunk (internal/streams/readable.js:293:12)  
ares-install verb luna#send() at readableAddChunk (internal/streams/readable.js:267:9)  
ares-install verb luna#send() at Channel.Readable.push (internal/streams/readable.js:206:10)  
ares-install verb luna#send() at SSH2Stream. (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2/lib/Channel.js:167:15)  
ares-install verb luna#send() at SSH2Stream.emit (events.js:400:28)  
ares-install verb luna#send() at parsePacket (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2-streams/lib/ssh.js:3191:10)  
ares-install verb luna#send() at SSH2Stream.\_transform (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2-streams/lib/ssh.js:701:13)  
ares-install verb luna#send() at SSH2Stream.Transform.\_read (internal/streams/transform.js:205:10) {  
ares-install verb luna#send() heading: '[com.webos.appInstallService failure]:',  
ares-install verb luna#send() message: 'luna-send command failed \<FAILED\_IPKG\_INSTALL\>'  
ares-install verb luna#send() }  
ares-install verb luna#send() ] value: undefined  
ares-install verb luna#send() closing exec stream  
ares-install verb installer#waterfall callback err: [  
ares-install verb installer#waterfall callback err: Error  
ares-install verb installer#waterfall callback err: at new CLIError (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/error-handler.js:231:22)  
ares-install verb installer#waterfall callback err: at Object.errMsgHdlr.getErrMsg (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/error-handler.js:173:29)  
ares-install verb installer#waterfall callback err: at /usr/lib/node\_modules/@webosose/ares-cli/lib/install.js:230:46  
ares-install verb installer#waterfall callback err: at \_onLine (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/luna.js:92:25)  
ares-install verb installer#waterfall callback err: at Array.forEach ()  
ares-install verb installer#waterfall callback err: at \_onData (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/luna.js:74:36)  
ares-install verb installer#waterfall callback err: at Channel. (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/novacom.js:887:56)  
ares-install verb installer#waterfall callback err: at Channel.emit (events.js:400:28)  
ares-install verb installer#waterfall callback err: at addChunk (internal/streams/readable.js:293:12)  
ares-install verb installer#waterfall callback err: at readableAddChunk (internal/streams/readable.js:267:9)  
ares-install verb installer#waterfall callback err: at Channel.Readable.push (internal/streams/readable.js:206:10)  
ares-install verb installer#waterfall callback err: at SSH2Stream. (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2/lib/Channel.js:167:15)  
ares-install verb installer#waterfall callback err: at SSH2Stream.emit (events.js:400:28)  
ares-install verb installer#waterfall callback err: at parsePacket (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2-streams/lib/ssh.js:3191:10)  
ares-install verb installer#waterfall callback err: at SSH2Stream.\_transform (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2-streams/lib/ssh.js:701:13)  
ares-install verb installer#waterfall callback err: at SSH2Stream.Transform.\_read (internal/streams/transform.js:205:10) {  
ares-install verb installer#waterfall callback err: heading: '[com.webos.appInstallService failure]:',  
ares-install verb installer#waterfall callback err: message: 'luna-send command failed \<FAILED\_IPKG\_INSTALL\>'  
ares-install verb installer#waterfall callback err: }  
ares-install verb installer#waterfall callback err: ]  
ares-install ERR! [com.webos.appInstallService failure]: luna-send command failed \<FAILED\_IPKG\_INSTALL\>  
ares-install verb Error  
at new CLIError (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/error-handler.js:231:22)  
at Object.errMsgHdlr.getErrMsg (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/error-handler.js:173:29)  
at /usr/lib/node\_modules/@webosose/ares-cli/lib/install.js:230:46  
at \_onLine (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/luna.js:92:25)  
at Array.forEach ()  
at \_onData (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/luna.js:74:36)  
at Channel. (/usr/lib/node\_modules/@webosose/ares-cli/lib/base/novacom.js:887:56)  
at Channel.emit (events.js:400:28)  
at addChunk (internal/streams/readable.js:293:12)  
at readableAddChunk (internal/streams/readable.js:267:9)  
at Channel.Readable.push (internal/streams/readable.js:206:10)  
at SSH2Stream. (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2/lib/Channel.js:167:15)  
at SSH2Stream.emit (events.js:400:28)  
at parsePacket (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2-streams/lib/ssh.js:3191:10)  
at SSH2Stream.\_transform (/usr/lib/node\_modules/@webosose/ares-cli/node\_modules/ssh2-streams/lib/ssh.js:701:13)  
at SSH2Stream.Transform.\_read (internal/streams/transform.js:205:10)

Does anyone know about the -5 error??  
Thanks.

---

<div class="post-metadata">

**Author:** ![NERGI](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.webosose.org/nergi/32/364_2.png) [@NERGI](https://forum.webosose.org/u/NERGI)\
**Post date:** [September 30, 2021, 12:51am UTC](https://forum.webosose.org/t/failed-to-install-a-native-app-into-webos-raspberrypi4/1572/2 "2021-09-30T00:51:14Z")

</div>

Hi @eidola, welcome to the forum!

This is the known issue and will be fixed in the next release.  
Another way to test the external native app is to use the webOS OSE emulator. For more details on the emulator, see [Emulator User Guide](https://www.webosose.org/docs/tools/sdk/emulator/virtualbox-emulator/emulator-user-guide/).

Thanks,

---

<div class="post-metadata">

**Author:** ![eidola](https://avatars.discourse-cdn.com/v4/letter/e/9de0a6/32.png) [@eidola](https://forum.webosose.org/u/eidola)\
**Post date:** [September 30, 2021, 1:06am UTC](https://forum.webosose.org/t/failed-to-install-a-native-app-into-webos-raspberrypi4/1572/3 "2021-09-30T01:06:19Z")

</div>

Thank you @NERGI

I already tested NDK for emulator, and it's work.  
NDK works in emulator, but not in raspberry4, so I wanted to check if I did something wrong or missed.  
Ok, I will test the external native app in emulator until it's fixed.

Thanks!!
