New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mosquitto 1.6.15 fails with message error: macro "pthread_testcancel" passed 1 arguments, but takes just 0 #429
Comments
Seems to work
|
I guess the problem is |
The uclibc version depends on your device and fritzos version |
Am I right that the problem is due to different uClibc versions? If so your answer means that mosquitto 1.6.8 will compile with the uClibc version used on my box while 1.6.15 won't anymore. If so: Anything I can do to get it working 1.6.15 working? |
No, it couold be everything. A bug in the new mosquitto version, removed backward compatibility, uclibc, gcc, error in crosscompiler/host thing are used etc |
Fixed it manually, this made it work
But I don't know how and when to apply the patch and I don't know if this will lead to other problems (my firmware builds fine from scratch) |
If you change uclibc, other programs may fail to compile which use this function.
Or: If you check the files you see they are in a As im not a c developer i cant say whats the best solution. You could ask in mqtt forum/bugtracker. |
Thanks for your help and your investigation @fda77! As I am not a c developer, too, I played around in mosquitto sources without knowing what I am doing. This works for me:
Mosquitto switches between the original pthread include and the dummy, see Do you have an idea now how this could be integrated cleanly into freetz? Otherwise I'll ask on the mosquitto mailing list or will ask some C developers. |
You could put your patch local into make/mosquitto/patches/
Much better: Open an issue here https://github.com/eclipse/mosquitto/issues |
Issue filed: eclipse/mosquitto#2419 |
I think "pthread_testcancel" if used form libc/uclibc OR dummypthread. It seems "threads" could be disabled, but I dont know if then some functions are recuced. |
If I am right this is indeed a bug in the mosquitto sources that is covered on modern compilers, see my latest comment. If so my patch could be applied generally. But let's wait for the mosquitto devs reply. |
Yes, even latest uclibc-ng 1.0.39 has |
Applied my patch without any condition and build against older and newer uClibc version without any problem. This reinforces my opinion that it is a bug in mosquitto. But let's wait and see the reaction of the mosquitto team. |
Fixed by a575b08 , if there is a fix upstream the patch could be deleted again |
With be43d90 mosquitto was upgraded from 1.6.8 to 1.6.15.
Downgrading mosquitto to the previous previous version 1.6.8 (and removing 100-pthread_setname_np.patch) fixed the problem, so the errors seems to be in relation to the upgrade.
The text was updated successfully, but these errors were encountered: