Skip to main content
Home
for DLMS smart meters
Open source solutions for DLMS smart metering

Main navigation

  • Home
  • Products
  • About us
  • Open Source
  • Community
  • Forum
  • Downloads
User account menu
  • Log in

Breadcrumb

  1. Home
  2. Forums
  3. Compile Error

Compile error

Forum Rules

Before commenting read Forum rules

Don't comment the topic if you have a new question.

You can create a new topic selecting correct category from Gurux Forum and then create a new topic selecting "New Topic" from the top left.

By fernando , 28 August, 2020
Forums
Gurux.DLMS

Hi,

What compiler do you use for ARM and what operating system?

When compiling it gives me the error that appears in the image.

Thank you.

Image
Profile picture for user Kurumi

Kurumi

5 years 11 months ago

Hi,

Hi,

I believe that your compiler is not supporting float32 and float64.
Open gxignore.h file and un-comment DLMS_IGNORE_FLOAT32 and DLMS_IGNORE_FLOAT64
Let me know if you have any problems.

BR,

Mikko

fernando

5 years 11 months ago

Hi,

Hi,

after doing it, now it gives me this error.

Image

fernando

5 years 11 months ago

Hi,

Hi,

in another compiler it gives me this error.

Thank you.

Image
Profile picture for user Kurumi

Kurumi

5 years 11 months ago

Hi,

Hi,

What compilers you are using? DLMS_IGNORE_FLOAT64 issue if fixed, but your second looks strange.
Get the latest version.

BR,

Mikko

fernando

5 years 11 months ago

Hi,

Hi,

We have tested on a debian 10: with the following compiler arm-linux-gnueabi-gcc:

COLLECT_GCC=arm-linux-gnueabi-gcc

COLLECT_LTO_WRAPPER=/usr/lib/gcc-cross/arm-linux-gnueabi/8/lto-wrapper

Target: arm-linux-gnueabi

Configured with: ../src/configure -v --with-pkgversion='Debian 8.3.0-2' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-multiarch --disable-sjlj-exceptions --with-arch=armv5te --with-float=soft --disable-werror --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=arm-linux-gnueabi --program-prefix=arm-linux-gnueabi- --includedir=/usr/arm-linux-gnueabi/include
Thread model: posix
gcc version 8.3.0 (Debian 8.3.0-2)

AND IT GIVES US THE FOLLOWING ERROR:

/gxvalueeventargs.c: In function ‘vec_attach’:

src/gxvalueeventargs.c:64:15: warning: assignment to ‘gxValueEventArg **’ {aka ‘struct <anonymous> **’} from incompatible pointer type ‘gxValueEventArg *’ {aka ‘struct <anonymous> *’} [-Wincompatible-pointer-types]

arr->data = value;

^

Compiled src/gxvalueeventargs.c successfully!

Compiled src/dlmsSettings.c successfully!

src/notify.c: In function ‘notify_parsePush’:

src/notify.c:278:43: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]

arr_push(items, key_init(obj, (void*)(uint64_t)index));

^

Compiled src/notify.c successfully!

Compiled src/message.c successfully!

src/variant.c: In function ‘convert’:

src/variant.c:1612:37: error: ‘dlmsVARIANT’ {aka ‘struct tagdlmsVARIANT’} has no member named ‘fltVal’; did you mean ‘pfltVal’?

sprintf(buff, "%f", tmp.fltVal);

^~~~~~

pfltVal

src/variant.c:1628:38: error: ‘dlmsVARIANT’ {aka ‘struct tagdlmsVARIANT’} has no member named ‘dblVal’; did you mean ‘pdblVal’?

sprintf(buff, "%lf", tmp.dblVal);

^~~~~~

pdblVal

src/variant.c:1763:58: error: ‘dlmsVARIANT’ {aka ‘struct tagdlmsVARIANT’} has no member named ‘fltVal’; did you mean ‘pfltVal’?

sscanf((char*)tmp.strVal->data, "%f", &item->fltVal);

^~~~~~

pfltVal

src/variant.c:1774:59: error: ‘dlmsVARIANT’ {aka ‘struct tagdlmsVARIANT’} has no member named ‘dblVal’; did you mean ‘pdblVal’?

sscanf((char*)tmp.strVal->data, "%lf", &item->dblVal);

^~~~~~

pdblVal

make: *** [makefile:33: obj/variant.o] Error 1

WE HAVE ALSO TESTED ON AN UBUNTU 10.04 WITH THE ARM-LINUX-GCC COMPILER:

arm-linux-gcc (GCC) 3.3.2

Copyright (C) 2003 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE

GETTING THE FOLLOWING ERRORS

In file included from src/../include/helpers.h:46,

from src/apdu.c:36:

src/../include/variant.h:134: warning: declaration does not declare anything

Compiled src/apdu.c successfully!

In file included from src/../include/helpers.h:46,

from src/bitarray.c:44:

src/../include/variant.h:134: warning: declaration does not declare anything

Compiled src/bitarray.c successfully!

In file included from src/../include/helpers.h:46,

from src/bytebuffer.c:47:

src/../include/variant.h:134: warning: declaration does not declare anything

Compiled src/bytebuffer.c successfully!

In file included from src/../include/helpers.h:46,

from src/ciphering.c:53:

src/../include/variant.h:134: warning: declaration does not declare anything

Compiled src/ciphering.c successfully!

In file included from src/../include/dlmssettings.h:41,

from src/../include/apdu.h:36,

from src/client.c:44:

src/../include/variant.h:134: warning: declaration does not declare anything

src/client.c: In function 'cl_getApplicationAssociationRequest':

src/client.c:337: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:338: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:339: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:340: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:341: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c: In function 'cl_parseApplicationAssociationResponse':

src/client.c:419: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:419: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:458: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:459: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c: In function 'cl_parseLNObjects':

src/client.c:526: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:530: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:531: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:532: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:533: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:541: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:552: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:557: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c: In function 'cl_parseSNObjects':

src/client.c:628: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:633: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:634: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:635: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:636: error: 'dlmsVARIANT' has no member named 'Arr'

src/client.c:658: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c: In function 'cl_writeLN':

src/client.c:1592: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:1592: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c: In function 'cl_methodLN':

src/client.c:1736: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:1736: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c: In function 'cl_methodSN':

src/client.c:1782: error: 'dlmsVARIANT' has no member named 'byteArr'

src/client.c:1782: error: 'dlmsVARIANT' has no member named 'byteArr'

make: *** [obj/client.o] Error 1

fernando

5 years 11 months ago

WE HAVE ALSO TESTED IT WITH

WE HAVE ALSO TESTED IT WITH

Ubuntu 16.04 con arm-linux-gnueabi-gcc –version:

arm-linux-gnueabi-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609

Copyright (C) 2015 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

COMPILE THE DEVELOPMENT WAS WELL

BUT WHEN COMPILING THE CLIENT IT GIVES THIS ERROR

Compiled src/getopt.c successfully!

Compiled src/connection.c successfully!

Compiled src/main.c successfully!

src/communication.c: In function 'com_readRowsByEntry2':

src/communication.c:1212:9: warning: format not a string literal and no format arguments [-Wformat-security]

printf(str);

^

Compiled src/communication.c successfully!

/usr/bin/ld: obj/getopt.o: Relocations in generic ELF (EM: 40)

obj/getopt.o: error adding symbols: File in wrong format

collect2: error: ld returned 1 exit status

makefile:26: recipe for target 'bin/gurux.dlms.client.bin' failed

make: *** [bin/gurux.dlms.client.bin] Error 1

thanks you

Profile picture for user Kurumi

Kurumi

5 years 11 months ago

Hi,

Hi,

You need to open gxigone and uncomment this line:
#define DLMS_IGNORE_MALLOC

or add -DDLMS_IGNORE_MALLOC to the compiler flags.

BR,

Mikko

  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Mon, 07/27/2026 - 12:37
    gurux.dlms.cpp 9.0.2607.2701
  • Thu, 07/23/2026 - 16:19
    gurux.dlms.java 4.0.96
  • Thu, 07/09/2026 - 14:34
    Gurux.DLMS.Python 1.0.201
  • Fri, 06/26/2026 - 16:32
    Gurux.Service 3.0.2606.2601
  • Wed, 06/24/2026 - 08:36
    Gurux.DLMS.Python 1.0.200

New forum topics

  • Version mismatch between Gurux.DLMS 9.x and Gurux.Common/Gurux.Serial 8.x
  • Service not known error on gprs communication
  • Help Needed: Interfacing Saral 100 Energy Meter with Microcontroller via RS232
  • Connecting Meter to Agent via serial
  • Reading block profile with Compact array
More

Who's new

  • nostra
  • cuiVEAwINCoyynjjn
  • qlMlMNfbqjNumKgGFIo
  • randx-super.ru
  • Arturolooth
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin