… | |
… | |
1662 | will be no polling. |
1662 | will be no polling. |
1663 | |
1663 | |
1664 | =head3 ABI Issues (Largefile Support) |
1664 | =head3 ABI Issues (Largefile Support) |
1665 | |
1665 | |
1666 | Libev by default (unless the user overrides this) uses the default |
1666 | Libev by default (unless the user overrides this) uses the default |
1667 | compilation environment, which means that on systems with optionally |
1667 | compilation environment, which means that on systems with large file |
1668 | disabled large file support, you get the 32 bit version of the stat |
1668 | support disabled by default, you get the 32 bit version of the stat |
1669 | structure. When using the library from programs that change the ABI to |
1669 | structure. When using the library from programs that change the ABI to |
1670 | use 64 bit file offsets the programs will fail. In that case you have to |
1670 | use 64 bit file offsets the programs will fail. In that case you have to |
1671 | compile libev with the same flags to get binary compatibility. This is |
1671 | compile libev with the same flags to get binary compatibility. This is |
1672 | obviously the case with any flags that change the ABI, but the problem is |
1672 | obviously the case with any flags that change the ABI, but the problem is |
1673 | most noticeably with ev_stat and large file support. |
1673 | most noticeably disabled with ev_stat and large file support. |
|
|
1674 | |
|
|
1675 | The solution for this is to lobby your distribution maker to make large |
|
|
1676 | file interfaces available by default (as e.g. FreeBSD does) and not |
|
|
1677 | optional. Libev cannot simply switch on large file support because it has |
|
|
1678 | to exchange stat structures with application programs compiled using the |
|
|
1679 | default compilation environment. |
1674 | |
1680 | |
1675 | =head3 Inotify |
1681 | =head3 Inotify |
1676 | |
1682 | |
1677 | When C<inotify (7)> support has been compiled into libev (generally only |
1683 | When C<inotify (7)> support has been compiled into libev (generally only |
1678 | available on Linux) and present at runtime, it will be used to speed up |
1684 | available on Linux) and present at runtime, it will be used to speed up |