Sample of 'gnssTest' building failed


#1

Hi,
I am following the ’ Import existing as Legato Project’ import the gnss Test sample, direction:
/home/os-freya/legato/packages/legato.framework.16.7.0.201609081601/resources/legato/apps/test/positioning/gnssTest

I used all of the original code. But after ’ Building Project’ , there are 7 errors:
Description Resource Path Location Type
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 309 Semantic Error
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 311 Semantic Error
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 313 Semantic Error
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 315 Semantic Error
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 317 Semantic Error
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 319 Semantic Error
Symbol ‘LE_GNSS_SV_INFO_MAX_LEN’ could not be resolved gnssTest.c /gnssTest/gnssTest line 356 Semantic Error


It seems that the ‘LE_GNSS_SV_INFO_MAX_LEN’ did not declare, but I can really found that the declaration in the le_gnss_interface.h file by press F3.

So I added the le_gnss_interface.h in the gnssTest.c
/**

  • This module implements a test for GNSS device starting.
  • Copyright © Sierra Wireless Inc. Use of this work is subject to license.

*/

#include “legato.h”
#include “interfaces.h”

#include “le_gnss_interface.h”
// Include macros for printing out values
#include “le_print.h”

static le_gnss_PositionHandlerRef_t PositionHandlerRef = NULL;

//Wait up to 60 seconds for a 3D fix
#define GNSS_WAIT_MAX_FOR_3DFIX 60

the errors was solved, however when I run the app in legato it was failed, following the logs:
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | app.c CreateTmpFs() 1104 | Mounted tmpfs at /legato/systems/current/appsWriteable/gnssTest/tmp.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | app.c CreateFileLink() 1411 | Created file link ‘/tmp/legato/serviceDirectoryServer’ to ‘/legato/systems/current/appsWriteable/gnssTest/tmp/legato/serviceDirectoryServer’.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | app.c CreateFileLink() 1411 | Created file link ‘/tmp/legato/serviceDirectoryClient’ to ‘/legato/systems/current/appsWriteable/gnssTest/tmp/legato/serviceDirectoryClient’.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxCoreDumpFileBytes to value 102400.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxFileBytes to value 102400.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxLockedMemoryBytes to value 8192.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxFileDescriptors to value 256.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxMQueueBytes to value 512.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxThreads to value 20.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | resourceLimits.c SetRLimitValue() 282 | Setting resource limit maxQueuedSignals to value 100.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | proc.c proc_Start() 1104 | Starting process ‘gnssTest’ with pid 29330
Jan 6 02:54:59 | supervisor[29330]/supervisor T=main | proc.c proc_Start() 1072 | Execing 'gnssTest’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=unknown | mem.c InitPool() 303 | Memory pool name ‘framework.hashMap_refPathIteratorMap’ is truncated to 'framework.hashMap_refPathIterat’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.hashMap_refEventHandlers’ is truncated to 'framework.hashMap_refEventHandl’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.MessagingClientInterfaces’ is truncated to 'framework.MessagingClientInterf’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.hashMap_refHandlersRef’ is truncated to 'framework.hashMap_refHandlersRe’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.hashMap_MessagingServices’ is truncated to 'framework.hashMap_MessagingServ’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.hashMap_MessagingClients’ is truncated to 'framework.hashMap_MessagingClie’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.PipelineSIGCHLD-reports’ is truncated to 'framework.PipelineSIGCHLD-repor’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c le_mem_ForceAlloc() 841 | Memory pool ‘framework.DestructorObjs’ overflowed. Expanded to 1 blocks.
Jan 6 02:54:59 | UNKNOWN[29330]/ T=main | _componentMain.c _gnssTest_Init() 35 | Initializing gnssTest component library.
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.hashMap_refle_pos_ClientHandler’ is truncated to 'framework.hashMap_refle_pos_Cli’
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | messagingMessage.c msgMessage_CreatePool() 112 | Pool name truncated to ‘msgs-43630c2afa038107ba82a60b59’ for protocol ‘43630c2afa038107ba82a60b59813b6a’.
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | mem.c InitPool() 303 | Memory pool name ‘framework.msgs-43630c2afa038107ba82a60b59’ is truncated to 'framework.msgs-43630c2afa038107’
Jan 6 02:54:59 | serviceDirectory[479]/serviceDirectory_exe T=main | serviceDirectory.c DispatchToServer() 713 | Client (uid 1019 ‘appgnssTest’, pid 29330) disagrees with server (uid 0 ‘root’, pid 522) on protocol ID of service 'gnssTes
Jan 6 02:54:59 | UNKNOWN[29330]/framework T=main | messagingSession.c ReceiveSessionOpenResponse() 684 | Unexpected server response: -6 (LE_FAULT).
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | proc.c proc_SigChildHandler() 1777 | Process ‘gnssTest’ (PID: 29330) has exited with exit code 1.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | proc.c GetFaultAction() 1593 | No fault action specified for process ‘gnssTest’. Assuming ‘ignore’.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | app.c app_SigChildHandler() 2982 | Process ‘gnssTest’ in app ‘gnssTest’ faulted: Ignored.
Jan 6 02:54:59 | supervisor[461]/supervisor T=main | apps.c DeactivateAppContainer() 209 | Application ‘gnssTest’ has stopped.

Any advises for this issue? thank you.

Regards!


#2

Jan 6 02:54:59 | serviceDirectory[479]/serviceDirectory_exe T=main | serviceDirectory.c DispatchToServer() 713 | Client (uid 1019 ‘appgnssTest’, pid 29330) disagrees with server (uid 0 ‘root’, pid 522) on protocol ID of service 'gnssTes

From the log it can be seen that there is a mismatch between Application version and legato version which are installed on target.
Due to this reason Client disagrees with the Server.

The legato version of the file where you build your application should match with version on the target. Can you conform which version of legato using on target and which version you are building. These both should match. Please check the toolchain which you are using should be compatible with legato version.


#4

hi pinkesh,

you are correct! This issue had been solved when I upgraded the legato version. Thank you.