Skip to content

Build failed on MacOS #22

@laurent-bohr

Description

@laurent-bohr

Hi,

Using the lastest release v1.0.1, build of the crate failed, using crates.io or git version :

  cargo:warning=In file included from libmodbus/src/modbus-rtu.c:17:
  cargo:warning=libmodbus/src/modbus-private.h:111:8: error: expected parameter declarator
  cargo:warning=  111 | size_t strlcpy(char *dest, const char *src, size_t dest_size);
  cargo:warning=      |        ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:112:47: note: expanded from macro 'strlcpy'
  cargo:warning=  112 |                 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
  cargo:warning=      |                                                             ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h:41:62: note: expanded from macro '__darwin_obsz'
  cargo:warning=   41 | #define __darwin_obsz(object) __builtin_object_size (object, _USE_FORTIFY_LEVEL > 1 ? 1 : 0)
  cargo:warning=      |                                                              ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h:32:32: note: expanded from macro '_USE_FORTIFY_LEVEL'
  cargo:warning=   32 | #    define _USE_FORTIFY_LEVEL 2
  cargo:warning=      |                                ^
  cargo:warning=In file included from libmodbus/src/modbus-rtu.c:17:
  cargo:warning=libmodbus/src/modbus-private.h:111:8: error: expected ')'
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:112:47: note: expanded from macro 'strlcpy'
  cargo:warning=  112 |                 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
  cargo:warning=      |                                                             ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h:41:62: note: expanded from macro '__darwin_obsz'
  cargo:warning=   41 | #define __darwin_obsz(object) __builtin_object_size (object, _USE_FORTIFY_LEVEL > 1 ? 1 : 0)
  cargo:warning=      |                                                              ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h:32:32: note: expanded from macro '_USE_FORTIFY_LEVEL'
  cargo:warning=   32 | #    define _USE_FORTIFY_LEVEL 2
  cargo:warning=      |                                ^
  cargo:warning=libmodbus/src/modbus-private.h:111:8: note: to match this '('
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:112:47: note: expanded from macro 'strlcpy'
  cargo:warning=  112 |                 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
  cargo:warning=      |                                                             ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h:41:53: note: expanded from macro '__darwin_obsz'
  cargo:warning=   41 | #define __darwin_obsz(object) __builtin_object_size (object, _USE_FORTIFY_LEVEL > 1 ? 1 : 0)
  cargo:warning=      |                                                     ^
  cargo:warning=In file included from libmodbus/src/modbus-rtu.c:17:
  cargo:warning=libmodbus/src/modbus-private.h:111:8: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
  cargo:warning=  111 | size_t strlcpy(char *dest, const char *src, size_t dest_size);
  cargo:warning=      |        ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:112:47: note: expanded from macro 'strlcpy'
  cargo:warning=  112 |                 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
  cargo:warning=      |                                                             ^
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h:41:31: note: expanded from macro '__darwin_obsz'
  cargo:warning=   41 | #define __darwin_obsz(object) __builtin_object_size (object, _USE_FORTIFY_LEVEL > 1 ? 1 : 0)
  cargo:warning=      |                               ^
  cargo:warning=In file included from libmodbus/src/modbus-rtu.c:17:
  cargo:warning=libmodbus/src/modbus-private.h:111:8: error: conflicting types for '__builtin___strlcpy_chk'
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:112:3: note: expanded from macro 'strlcpy'
  cargo:warning=  112 |                 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
  cargo:warning=      |                 ^
  cargo:warning=libmodbus/src/modbus-private.h:111:8: note: '__builtin___strlcpy_chk' is a builtin with type 'unsigned long (char *, const char *, unsigned long, unsigned long)'
  cargo:warning=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:112:3: note: expanded from macro 'strlcpy'
  cargo:warning=  112 |                 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
  cargo:warning=      |                 ^
  cargo:warning=4 errors generated.

  --- stderr

Any ideas how to solve this ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions