r-minimal
r-minimal copied to clipboard
readxl not building anymore
Hello,
tidyverse/readxl recently updated its github repository and now it does not compile anymore with your example: https://github.com/r-hub/r-minimal/blob/master/examples/tidyverse/Dockerfile
Do you have any idea how to fix the problem? 😅
Crashlog
#5 193.8 ✖ Failed to build readxl 1.3.1.9000
#5 194.6
#5 194.6 Error: <callr_remote_error: Failed to build source package 'readxl'>
#5 194.6 in process 47
#5 194.6 -->
#5 194.6 Failed to build source package 'readxl', stdout + stderr:
#5 194.6
#5 194.6 OE> * installing *source* package ‘readxl’ ...
#5 194.6 OE> staged installation is only possible with locking
#5 194.6 OE> ** using non-staged installation
#5 194.6 OE> ** libs
#5 194.6 OE> g++ -std=gnu++11 -I"/usr/local/lib/R/include" -DNDEBUG -Iunix -I. -I'/usr/local/lib/R/library/cpp11/include' -I'/usr/local/lib/R/library/progress/include' -I/usr/local/include -fvisibility=hidden -fpic -D__MUSL__ -Wall -pedantic -c cpp11.cpp -o cpp11.o
#5 194.6 OE> g++ -std=gnu++11 -I"/usr/local/lib/R/include" -DNDEBUG -Iunix -I. -I'/usr/local/lib/R/library/cpp11/include' -I'/usr/local/lib/R/library/progress/include' -I/usr/local/include -fvisibility=hidden -fpic -D__MUSL__ -Wall -pedantic -c XlsWorkBook.cpp -o XlsWorkBook.o
#5 194.6 OE> g++ -std=gnu++11 -I"/usr/local/lib/R/include" -DNDEBUG -Iunix -I. -I'/usr/local/lib/R/library/cpp11/include' -I'/usr/local/lib/R/library/progress/include' -I/usr/local/include -fvisibility=hidden -fpic -D__MUSL__ -Wall -pedantic -c XlsWorkSheet.cpp -o XlsWorkSheet.o
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:51:25: error: 'uid_t' has not been declared
#5 194.6 OE> 51 | int chown(const char *, uid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:51:32: error: 'gid_t' has not been declared
#5 194.6 OE> 51 | int chown(const char *, uid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:52:17: error: 'uid_t' has not been declared
#5 194.6 OE> 52 | int fchown(int, uid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:52:24: error: 'gid_t' has not been declared
#5 194.6 OE> 52 | int fchown(int, uid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:53:26: error: 'uid_t' has not been declared
#5 194.6 OE> 53 | int lchown(const char *, uid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:53:33: error: 'gid_t' has not been declared
#5 194.6 OE> 53 | int lchown(const char *, uid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:54:33: error: 'uid_t' has not been declared
#5 194.6 OE> 54 | int fchownat(int, const char *, uid_t, gid_t, int);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:54:40: error: 'gid_t' has not been declared
#5 194.6 OE> 54 | int fchownat(int, const char *, uid_t, gid_t, int);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:108:1: error: 'uid_t' does not name a type; did you mean 'pid_t'?
#5 194.6 OE> 108 | uid_t getuid(void);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | pid_t
#5 194.6 OE> /usr/include/unistd.h:109:1: error: 'uid_t' does not name a type; did you mean 'pid_t'?
#5 194.6 OE> 109 | uid_t geteuid(void);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | pid_t
#5 194.6 OE> /usr/include/unistd.h:110:1: error: 'gid_t' does not name a type; did you mean 'pid_t'?
#5 194.6 OE> 110 | gid_t getgid(void);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | pid_t
#5 194.6 OE> /usr/include/unistd.h:111:1: error: 'gid_t' does not name a type; did you mean 'pid_t'?
#5 194.6 OE> 111 | gid_t getegid(void);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | pid_t
#5 194.6 OE> /usr/include/unistd.h:112:20: error: 'gid_t' has not been declared
#5 194.6 OE> 112 | int getgroups(int, gid_t []);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> /usr/include/unistd.h:113:12: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 113 | int setuid(uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:114:13: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 114 | int seteuid(uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:115:12: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 115 | int setgid(gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:116:13: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 116 | int setegid(gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:137:14: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 137 | int setreuid(uid_t, uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:137:21: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 137 | int setreuid(uid_t, uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:137:26: error: expression list treated as compound expression in initializer [-fpermissive]
#5 194.6 OE> 137 | int setreuid(uid_t, uid_t);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:138:14: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 138 | int setregid(gid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:138:21: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 138 | int setregid(gid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:138:26: error: expression list treated as compound expression in initializer [-fpermissive]
#5 194.6 OE> 138 | int setregid(gid_t, gid_t);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:169:29: error: 'gid_t' does not name a type; did you mean 'pid_t'?
#5 194.6 OE> 169 | int setgroups(size_t, const gid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | pid_t
#5 194.6 OE> /usr/include/unistd.h:185:15: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 185 | int setresuid(uid_t, uid_t, uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:185:22: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 185 | int setresuid(uid_t, uid_t, uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:185:29: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 185 | int setresuid(uid_t, uid_t, uid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:185:34: error: expression list treated as compound expression in initializer [-fpermissive]
#5 194.6 OE> 185 | int setresuid(uid_t, uid_t, uid_t);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:186:15: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 186 | int setresgid(gid_t, gid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:186:22: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 186 | int setresgid(gid_t, gid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:186:29: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 186 | int setresgid(gid_t, gid_t, gid_t);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:186:34: error: expression list treated as compound expression in initializer [-fpermissive]
#5 194.6 OE> 186 | int setresgid(gid_t, gid_t, gid_t);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:187:15: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 187 | int getresuid(uid_t *, uid_t *, uid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:187:22: error: expected primary-expression before ',' token
#5 194.6 OE> 187 | int getresuid(uid_t *, uid_t *, uid_t *);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:187:24: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 187 | int getresuid(uid_t *, uid_t *, uid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:187:31: error: expected primary-expression before ',' token
#5 194.6 OE> 187 | int getresuid(uid_t *, uid_t *, uid_t *);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:187:33: error: 'uid_t' was not declared in this scope; did you mean 'xls::uid_t'?
#5 194.6 OE> 187 | int getresuid(uid_t *, uid_t *, uid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::uid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:245:18: note: 'xls::uid_t' declared here
#5 194.6 OE> 245 | typedef unsigned uid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:187:40: error: expected primary-expression before ')' token
#5 194.6 OE> 187 | int getresuid(uid_t *, uid_t *, uid_t *);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:187:40: error: expression list treated as compound expression in initializer [-fpermissive]
#5 194.6 OE> /usr/include/unistd.h:188:15: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 188 | int getresgid(gid_t *, gid_t *, gid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:188:22: error: expected primary-expression before ',' token
#5 194.6 OE> 188 | int getresgid(gid_t *, gid_t *, gid_t *);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:188:24: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 188 | int getresgid(gid_t *, gid_t *, gid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:188:31: error: expected primary-expression before ',' token
#5 194.6 OE> 188 | int getresgid(gid_t *, gid_t *, gid_t *);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:188:33: error: 'gid_t' was not declared in this scope; did you mean 'xls::gid_t'?
#5 194.6 OE> 188 | int getresgid(gid_t *, gid_t *, gid_t *);
#5 194.6 OE> | ^~~~~
#5 194.6 OE> | xls::gid_t
#5 194.6 OE> In file included from /usr/include/sys/types.h:57,
#5 194.6 OE> from ./libxls/xlstypes.h:48,
#5 194.6 OE> from libxls/xls.h:42,
#5 194.6 OE> from ColSpec.h:7,
#5 194.6 OE> from XlsCell.h:4,
#5 194.6 OE> from CellLimits.h:4,
#5 194.6 OE> from XlsWorkSheet.h:4,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/bits/alltypes.h:250:18: note: 'xls::gid_t' declared here
#5 194.6 OE> 250 | typedef unsigned gid_t;
#5 194.6 OE> | ^~~~~
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:6,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/unistd.h:188:40: error: expected primary-expression before ')' token
#5 194.6 OE> 188 | int getresgid(gid_t *, gid_t *, gid_t *);
#5 194.6 OE> | ^
#5 194.6 OE> /usr/include/unistd.h:188:40: error: expression list treated as compound expression in initializer [-fpermissive]
#5 194.6 OE> In file included from /usr/local/lib/R/library/progress/include/RProgress.h:7,
#5 194.6 OE> from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/include/sys/time.h:18:17: error: field 'it_interval' has incomplete type 'timeval'
#5 194.6 OE> 18 | struct timeval it_interval;
#5 194.6 OE> | ^~~~~~~~~~~
#5 194.6 OE> /usr/include/sys/time.h:11:26: note: forward declaration of 'struct timeval'
#5 194.6 OE> 11 | int gettimeofday (struct timeval *__restrict, void *__restrict);
#5 194.6 OE> | ^~~~~~~
#5 194.6 OE> /usr/include/sys/time.h:19:17: error: field 'it_value' has incomplete type 'timeval'
#5 194.6 OE> 19 | struct timeval it_value;
#5 194.6 OE> | ^~~~~~~~
#5 194.6 OE> /usr/include/sys/time.h:11:26: note: forward declaration of 'struct timeval'
#5 194.6 OE> 11 | int gettimeofday (struct timeval *__restrict, void *__restrict);
#5 194.6 OE> | ^~~~~~~
#5 194.6 OE> In file included from Spinner.h:4,
#5 194.6 OE> from XlsWorkSheet.h:5,
#5 194.6 OE> from XlsWorkSheet.cpp:1:
#5 194.6 OE> /usr/local/lib/R/library/progress/include/RProgress.h: In static member function 'static double RProgress::RProgress::time_now()':
#5 194.6 OE> /usr/local/lib/R/library/progress/include/RProgress.h:349:20: error: aggregate 'timeval now' has incomplete type and cannot be defined
#5 194.6 OE> 349 | struct timeval now;
#5 194.6 OE> | ^~~
#5 194.6 OE> make: *** [/usr/local/lib/R/etc/Makeconf:177: XlsWorkSheet.o] Error 1
#5 194.6 OE> ERROR: compilation failed for package ‘readxl’
#5 194.6 OE> * removing ‘/tmp/RtmplBhgmD/pkg-lib2f6595ab3e/readxl’
#5 194.6
#5 194.6 Stack trace:
#5 194.6
#5 194.6 12. (function (...) ...
#5 194.6 13. base:::withCallingHandlers(cli_message = function(msg) { ...
#5 194.6 14. get("pkg_install_do_plan", asNamespace("pak"))(...)
#5 194.6 15. pkgdepends::install_package_plan(plan = plan, lib = lib, num_workers = num_ ...
#5 194.6 16. base:::withCallingHandlers({ ...
#5 194.6 17. pkgdepends:::handle_events(state, events)
#5 194.6 18. pkgdepends:::handle_event(state, i)
#5 194.6 19. pkgdepends:::stop_task(state, worker)
#5 194.6 20. pkgdepends:::stop_task_build(state, worker)
#5 194.6 21. base:::throw(new_pkg_build_error("Failed to build source package {pkg}", ...
#5 194.6 22. base:::signalCondition(cond)
#5 194.6 23. (function (e) ...
#5 194.6 24. base:::stop(e)
#5 194.6 25. (function (e) ...
#5 194.6
#5 194.6 x Failed to build source package 'readxl'
#5 194.6
#5 194.6 Execution halted
------
executor failed running [/bin/sh -c installr -d -t "R-dev file automake autoconf linux-headers libxml2-dev" -a "libxml2 icu-libs" `# needed for xml2 and stringr` tidyverse/readxl `# CRAN version (<=1.3.1) does not compile on alpine` tidyverse]: exit code: 1
To answer myself, a quick fix is to use the last working git commit hash:
tidyverse/readxl@895ccb494846249a4e771c8087a53e90b5a65283
This was supposedly fixed, but maybe it crept back: https://github.com/tidyverse/readxl/issues/562
After digging around I found a fork of readxl with a fix that worked for me.
RUN installr -d \
-t "R-dev file automake autoconf linux-headers libxml2-dev libxml2 icu-libs" \
struckma/readxl tidyverse
I fixed this in the progress package, so this should work:
installr -d r-lib/progress readxl
I'll update the README.
Hmmm, unfortunately this breaks vroom....
OK, this fixes it: https://github.com/tidyverse/readxl/pull/687
Until it is merged you can use this branch:
installr gaborcsardi/readxl@fix/alpine-linux
I updated the README and the tidyverse example as well.
Hello This is still reproducible even with the current tidyverse example.
#10 214.9 ✖ Failed to build readxl 1.3.1.9000
#10 220.3 Error:
#10 220.3 ! error in pak subprocess
#10 220.3 Caused by error in `stop_task_build(state, worker)`:
#10 220.3 ! Failed to build source package 'readxl'
#10 220.3 ---
#10 220.3 Backtrace:
#10 220.3 1. pak::pkg_install(commandArgs(TRUE))
#10 220.3 2. pak:::remote(function(...) get("pkg_install_do_plan", asNamespace("pak"))(...), …
#10 220.3 3. err$throw(res$error)
#10 220.3 ---
#10 220.3 Subprocess backtrace:
#10 220.3 1. base::withCallingHandlers(cli_message = function(msg) { …
#10 220.3 2. get("pkg_install_do_plan", asNamespace("pak"))(...)
#10 220.3 3. pkgdepends::install_package_plan(plan = plan, lib = lib, num_workers = num…
#10 220.3 4. base::withCallingHandlers({ …
#10 220.3 5. pkgdepends:::handle_events(state, events)
#10 220.3 6. pkgdepends:::handle_event(state, i)
#10 220.3 7. pkgdepends:::stop_task(state, worker)
#10 220.3 8. pkgdepends:::stop_task_build(state, worker)
#10 220.3 9. base::throw(new_pkg_build_error("Failed to build source package {pkg}", …
#10 220.3 10. | base::signalCondition(cond)
#10 220.3 11. global (function (e) …
#10 220.3 Execution halted
------
executor failed running [/bin/sh -c set -ex ; installr -d -t "curl-dev libxml2-dev linux-headers gfortran" -a "libcurl libxml2" gaborcsardi/readxl@fix/alpine-linux tidyverse]: exit code: 1
still failing
If you don't need a recent version, then try the one I fixed, e.g.
installr -d tidyverse/readxl@32a4492225d3d9741cfc3e17bf5911f954fff22d
https://github.com/tidyverse/readxl/pull/708
installr -d tidyverse/readxl
works now, and after the next readxl release installr -d readxl
will work as well.