>>>>> "Malte" == Malte Schröder <[email protected]> writes:

> On 17/03/2025 22:12, John Stoffel wrote:
>> Hi guys,
>> I'm trying to upgrade the bcachefs tools since I tend to use newer
>> kernels on my Debian 12 system.  The debian packages bcachefs-tools
>> are ancient.  
>> 
>> So I cloned the repo, installed the pre-reqs and I'm trying to compile
>> it, but I get the following:
>> 
>> 
>> quad:/bcachefs/bcachefs1/bcachefs-tools$ make
>> [CC]     c_src/bcachefs.o
>> In file included from ./libbcachefs/bcachefs.h:202,
>> from c_src/tools-util.h:21,
>> from c_src/cmds.h:10,
>> from c_src/bcachefs.c:26:
>> include/linux/srcu.h:10:41: error: return type is an incomplete type
>> 10 | static inline struct urcu_gp_poll_state get_state_synchronize_rcu()
>> |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h: In function ‘get_state_synchronize_rcu’:
>> include/linux/srcu.h:12:16: warning: implicit declaration of function 
>> ‘start_poll_synchronize_rcu’ ]
>> 12 |         return start_poll_synchronize_rcu();
>> |                ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h:12:16: warning: ‘return’ with a value, in function 
>> returning void [-Wreturn-ty]
>> 12 |         return start_poll_synchronize_rcu();
>> |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h:10:41: note: declared here
>> 10 | static inline struct urcu_gp_poll_state get_state_synchronize_rcu()
>> |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h: At top level:
>> include/linux/srcu.h:25:99: error: parameter 2 (‘cookie’) has incomplete type
>> 25 | bool poll_state_synchronize_srcu(struct srcu_struct *ssp, struct 
>> urcu_gp_poll_state cookie)
>> |                                                           
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
>> 
>> include/linux/srcu.h: In function ‘poll_state_synchronize_srcu’:
>> include/linux/srcu.h:27:16: warning: implicit declaration of function 
>> ‘poll_state_synchronize_rcu’;]
>> 27 |         return poll_state_synchronize_rcu(cookie);
>> |                ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> |                poll_state_synchronize_srcu
>> include/linux/srcu.h: At top level:
>> include/linux/srcu.h:30:41: error: return type is an incomplete type
>> 30 | static inline struct urcu_gp_poll_state 
>> start_poll_synchronize_srcu(struct srcu_struct *ssp)
>> |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h: In function ‘start_poll_synchronize_srcu’:
>> include/linux/srcu.h:32:16: warning: ‘return’ with a value, in function 
>> returning void [-Wreturn-ty]
>> 32 |         return start_poll_synchronize_rcu();
>> |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h:30:41: note: declared here
>> 30 | static inline struct urcu_gp_poll_state 
>> start_poll_synchronize_srcu(struct srcu_struct *ssp)
>> |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/srcu.h: At top level:
>> include/linux/srcu.h:35:41: error: return type is an incomplete type
>> 35 | static inline struct urcu_gp_poll_state 
>> get_state_synchronize_srcu(struct srcu_struct *ssp)
>> |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> make: *** [Makefile:171: c_src/bcachefs.o] Error 1
>> quad:/bcachefs/bcachefs1/bcachefs-tools$ git branch
>> master  * v1.20.0
>> 

> Libs in Debian 12/Bookworm are too old for bcachefs-tools. I think
> someone pulled it of by forcing some libs from Trixie, but that
> caused other things to break.

Since the docs say I can use 12/Bookworm, I was quite surprised. Can
someone update the requirements for what's currently required for
building?  And maybe the process of taking the built image back to
older releases?  It's kinda annoying that the tools are _so_ bleeding
edge.

John


Reply via email to