test project BACnet undefined symbol

Issue #37 invalid
Anton Midyukov created an issue

I'm a Maintainer beremiz for ALT Linux.

When building a test project BACnet: [CC] plc_main.c -> plc_main.o /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c: In function ‘CheckFilehash’: /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c:438:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread(&size, sizeof(size), 1, retain_buffer); ^~~~~~~~~~ /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c:444:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread(&file_digit, sizeof(char), 1, retain_buffer); ^~~~~~~~~~ /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c: In function ‘Remind’: /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c:648:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread((void *)p, count, 1, retain_buffer); ^~~~~~~~~ [CC] plc_debugger.c -> plc_debugger.o [CC] config.c -> config.o [CC] resource1.c -> resource1.o 0 : [CC] server_0.c -> server_0.o /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/server_0.c: In function ‘bn_server_run’: /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/server_0.c:454:5: warning: implicit declaration of function ‘bvlc_bdt_restore_local’; did you mean ‘bvlc_add_bdt_entry_local’? [-Wimplicit-function-declaration] bvlc_bdt_restore_local(); ^~~~~~~~ bvlc_add_bdt_entry_local Linking : [CC] plc_main.o plc_debugger.o config.o resource1.o server_0.o -> BACnet.so Successfully built.

When transfer to simulator-PLC: PLCobject : NewPLC (1362ee6b81b24b80578bcb84fd7481e2) PLCobject : Traceback (most recent call last): Transfer failed File "/usr/lib/python2.7/site-packages/beremiz/runtime/PLCObject.py", line 269, in _LoadPLC self._PLClibraryHandle = dlopen(self._GetLibFileName()) OSError: /tmp/.private/antohami/tmpYh7bAC/1362ee6b81b24b80578bcb84fd7481e2.so: undefined symbol: bvlc_bdt_restore_local

Comments (3)

  1. Anton Midyukov reporter
    Start build in /home/antohami/gear/beremiz/beremiz/tests/BACnet/build
    Generating SoftPLC IEC-61131 ST/IL/SFC code...
    Compiling IEC Program into C code...
    Extracting Located Variables...
    C code generated successfully.
    PLC :
       [CC]  plc_main.c -> plc_main.o
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c: In function 'CheckFilehash':
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c:438:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
      fread(&size, sizeof(size), 1, retain_buffer);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c:444:3: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
       fread(&file_digit, sizeof(char), 1, retain_buffer);
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c: In function 'Remind':
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/plc_main.c:648:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
      fread((void *)p, count, 1, retain_buffer);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       [CC]  plc_debugger.c -> plc_debugger.o
       [CC]  config.c -> config.o
       [CC]  resource1.c -> resource1.o
    0 :
       [CC]  server_0.c -> server_0.o
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/server_0.c: In function 'bn_server_run':
    /home/antohami/gear/beremiz/beremiz/tests/BACnet/build/server_0.c:454:5: warning: implicit declaration of function 'bvlc_bdt_restore_local'; did you mean 'bvlc_add_bdt_entry_local'? [-Wimplicit-function-declaration]
         bvlc_bdt_restore_local();
         ^~~~~~~~~~~~~~~~~~~~~~
         bvlc_add_bdt_entry_local
    Linking :
       [CC]  plc_main.o plc_debugger.o config.o resource1.o server_0.o -> BACnet.so
    Successfully built.
    /usr/lib64/python2.7/site-packages/wx-3.0-gtk2/wx/_core.py:16629: UserWarning: wxPython/wxWidgets release number mismatch
      warnings.warn("wxPython/wxWidgets release number mismatch")
    Twisted unavailable.
    Pyro port : 61614
    Current working directory : /tmp/.private/antohami/tmpp9RCmn
    PYRO connecting to URI : PYROLOC://127.0.0.1:61614
    UI thread started successfully.
    PLCobject : NewPLC (1362ee6b81b24b80578bcb84fd7481e2)
    PLCobject : Traceback (most recent call last):
      File "/usr/lib/python2.7/site-packages/beremiz/runtime/PLCObject.py", line 269, in _LoadPLC
    Transfer failed
        self._PLClibraryHandle = dlopen(self._GetLibFileName())
    OSError: /tmp/.private/antohami/tmpp9RCmn/1362ee6b81b24b80578bcb84fd7481e2.so: undefined symbol: bvlc_bdt_restore_local
    
  2. Andrey Skvortsov

    Hi Anton,

    as I've told you in the answer to your e-mail from 18.08, you have to use latest version of bacnet stack.

    In revision r3183 Mario de Sousa added this function:


    r3183 | skarg | 2018-06-10 05:25:47 +0300 (Sun, 10 Jun 2018) | 4 lines

    Merged revision(s) 3181 from branches/releases/bacnet-stack-0-8-0: Added BDT backup and restore to file option API. Thank you to Mario de Sousa for the patch.

    I'm using r3184 | ekh | 2018-06-18 09:24:28 +0300 (Mon, 18 Jun 2018) and don't have any problems.

  3. Log in to comment