Make install gc6.6 on a Samba mount fails

March 2010


So we have gc6.6, a garbage collector for C/C++, and when we say

sh ./configure --prefix=~/gc
make
make install

, then we get:

<snip>
make[2]: Entering directory `/home/p217811/gc6.6/doc'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/home/p217811/gc/share/gc" || mkdir -p -- "/home/p217811/gc/share/gc"
/usr/bin/install -c -m 644 'barrett_diagram' '/home/p217811/gc/share/gc/barrett_diagram'
/usr/bin/install: setting permissions for `/home/p217811/gc/share/gc/barrett_diagram': Input/output error
/usr/bin/install -c -m 644 'debugging.html' '/home/p217811/gc/share/gc/debugging.html'
/usr/bin/install: setting permissions for `/home/p217811/gc/share/gc/debugging.html': Input/output error
<snip>

This is due to the Samba share not supporting extended attributes. In order to support these, Samba, the underlying XFS filesystem and the server kernel.

On the client, the CIFS share needs to be mounted with the option -user_xattr. After that, extended attributes can be set and read.

[Note]Note

The command mount doesn't show in its output all the options mount.cifs has been run with. In particular, it doesn't show whether the user_xattr option was used. But using it enables the extended attributes nevertheless.