есть в хозяйстве старая тачка с FreeBSD 4.11
при попытке обновить пакет p5-Encode-Detect получал ошибку
lib/Encode/Detect/Detector.c:79: syntax error before `__attribute__'
lib/Encode/Detect/Detector.c:80: syntax error before `__attribute__'
lib/Encode/Detect/Detector.c:85: register name not specified for `struct SV ** mark'
lib/Encode/Detect/Detector.c:85: `sp' was not declared in this scope
lib/Encode/Detect/Detector.c:87: syntax error before `if'
error building lib/Encode/Detect/Detector.o from 'lib/Encode/Detect/Detector.c' at /usr/local/lib/perl5/site_perl/5.8.8/ExtUtils/CBuilder/Base.pm line 110.
*** Error code 2
решение:
в файле p5-Encode-Detect/work/Encode-Detect-1.01/lib/Encode/Detect/Detector.xs
коментируем строку 43 и 45
43 // #if __GNUC__ == 3 && __GNUC_MINOR__ <= 3
44 #undef HASATTRIBUTE_UNUSED
45 // #endif