Opened 3 years ago

Last modified 3 years ago

#61753 closed defect

libast: error: implicitly declaring library function 'strlen' — at Version 1

Reported by: rsmacleod (Rob MacLeod) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: catalina bigsur Cc:
Port: libast

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Hi, I am upgrading a Mac Mini to Bigsur and most of my fresh installs from MacPorts are working fine, except for Eterm. I get a crash while making libist.

Looks like some compiler problems:

:info:build snprintf.c:45:22: error: unknown type name 'size_t' 
                
:info:build vsnprintf(char *str, size_t count, const char *fmt, va_list args)  
 
:info:build          
            ^                                              
:info:build snprintf.c:53:13: error: implicitly declaring library function 'strlen' with type 'unsigned long (const char *)' [-Werror,-Wimplicit-function-declaration]                                                                        
:info:build     return (strlen(str));                                           
:info:build             ^                                                       
:info:build snprintf.c:53:13: note: include the header <string.h> or explicitly provide a declaration for 'strlen'                                             
:info:build snprintf.c:58:21: error: unknown type name 'size_t'                 
:info:build snprintf(char *str, size_t count, const char *fmt, ...)             
:info:build                     ^                                               

Thanks in advance for your help.
Rob (U of Utah)

Change History (2)

Changed 3 years ago by rsmacleod (Rob MacLeod)

Attachment: libast-error.log added

log file from failed make on libast

comment:1 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: catalina bigsur added; libast Eterm removed
Priority: HighNormal
Summary: Eterm installation on BigSur failing on libastlibast: error: implicitly declaring library function 'strlen'

Yup, the well-known implicit function declaration problem we see with tons of ports as of Xcode 12. Needs to be fixed by including the right headers.

Note: See TracTickets for help on using tickets.