Description
I am trying to compile LTFS on CentOS, but the build process fails with errors related to the FUSE API version and deprecated pthread_yield function.
Steps to Reproduce
Run ./configure
Run make
Encounter errors during the build process
Expected behavior
The build should complete successfully without errors.
Actual behavior
The build fails with the following errors:
An error message stating that only FUSE API version 30 or greater is supported.
Compilation warnings about the deprecated pthread_yield, with the suggestion to use sched_yield instead.
Environment
OS: CentOS
FUSE version: 3.10.2
Compiler: GCC
Error Logs
plaintext
In file included from /usr/include/fuse3/fuse.h:19,
from ../../src/ltfs_fuse.h:70,
from iosched.c:53:
/usr/include/fuse3/fuse_common.h:852:4: ERROR:#error only API version 30 or greater is supported
852 | # error only API version 30 or greater is supported
| ^~~~~
In file included from ../../src/libltfs/ltfstrace.h:72,
from ../../src/libltfs/ltfs.h:109,
from ../../src/ltfs_fuse.h:71,
from iosched.c:53:
../../src/libltfs/ltfs_thread.h:214:9: WARN:‘pthread_yield’ is deprecated: pthread_yield is deprecated, use sched_yield instead [-Wdeprecated-declarations]
214 | return pthread_yield();
| ^~~~~~
Additional context
FUSE 3.10.2 should support the required API version 30, but the build script seems not to recognize this.
The usage of deprecated pthread_yield needs replacement with sched_yield across the project to resolve the deprecation warnings and potential future build failures.
Description
I am trying to compile LTFS on CentOS, but the build process fails with errors related to the FUSE API version and deprecated pthread_yield function.
Steps to Reproduce
Run ./configure
Run make
Encounter errors during the build process
Expected behavior
The build should complete successfully without errors.
Actual behavior
The build fails with the following errors:
An error message stating that only FUSE API version 30 or greater is supported.
Compilation warnings about the deprecated pthread_yield, with the suggestion to use sched_yield instead.
Environment
OS: CentOS
FUSE version: 3.10.2
Compiler: GCC
Error Logs
plaintext
FUSE 3.10.2 should support the required API version 30, but the build script seems not to recognize this.
The usage of deprecated pthread_yield needs replacement with sched_yield across the project to resolve the deprecation warnings and potential future build failures.