<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <TITLE> [Mageia-dev] need some help to build a linuxsampler.rpm </TITLE> <LINK REL="Index" HREF="index.html" > <LINK REL="made" HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20need%20some%20help%20to%20build%20a%20linuxsampler.rpm&In-Reply-To=%3C505F10E5.5050909%40mageia.org%3E"> <META NAME="robots" CONTENT="index,nofollow"> <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> <LINK REL="Previous" HREF="018866.html"> <LINK REL="Next" HREF="018881.html"> </HEAD> <BODY BGCOLOR="#ffffff"> <H1>[Mageia-dev] need some help to build a linuxsampler.rpm</H1> <B>Thomas Backlund</B> <A HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20need%20some%20help%20to%20build%20a%20linuxsampler.rpm&In-Reply-To=%3C505F10E5.5050909%40mageia.org%3E" TITLE="[Mageia-dev] need some help to build a linuxsampler.rpm">tmb at mageia.org </A><BR> <I>Sun Sep 23 15:38:45 CEST 2012</I> <P><UL> <LI>Previous message: <A HREF="018866.html">[Mageia-dev] need some help to build a linuxsampler.rpm </A></li> <LI>Next message: <A HREF="018881.html">[Mageia-dev] need some help to build a linuxsampler.rpm </A></li> <LI> <B>Messages sorted by:</B> <a href="date.html#18868">[ date ]</a> <a href="thread.html#18868">[ thread ]</a> <a href="subject.html#18868">[ subject ]</a> <a href="author.html#18868">[ author ]</a> </LI> </UL> <HR> <!--beginarticle--> <PRE>23.09.2012 16:19, PhilippeDidier skrev: ><i> Olivier Blin a écrit : </I>>><i> PhilippeDidier <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">philippedidier at laposte.net</A>> writes: </I>>><i> </I>>>><i> indeed the configured Makefile contains </I>>>><i> LDFLAGS option --as-needed htat worked for Mandriva !!! </I>>>><i> </I>>>><i> I need now to write a patch for the makefiles... </I>>>><i> to fix it in a better way than overriding LDFLAGS </I>>>><i> </I>>>><i> May we now suppress the --as-needed option for LDFLAGS in every makefile ? </I>>><i> </I>>><i> No, you should not remove this option, this is the intended behavior. </I>>><i> It just exposed a missing -l flag in the software you are packaging. </I>>><i> </I>>><i> The proper fix, as Thomas said, is to patch the Makefile to add the </I>>><i> -lpthread flag where appropriate. </I>>><i> </I>><i> Hello ! </I>><i> Some news : </I>><i> Indeed it was more difficult than I thought : </I>><i> There were 21 different Makefile.in in 21 directories to modify : </I>><i> I wrote a patch that replaces </I>><i> -LDFLAGS = @LDFLAGS@ </I>><i> by </I>><i> +LDFLAGS = @LDFLAGS@ -lpthread </I>><i> in each of them... </I>><i> </I> And now you are overlinking :) You only need to patch the Makefile(s) that is responsible for building the code that relies on pthread ><i> Now each Makefile contains : </I>><i> LDFLAGS = -Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 </I>><i> -Wl,--build-id -Wl,--enable-new-dtags -lpthread </I>><i> </I>><i> </I>><i> And I discover that my first workaround was indeed bad : </I>><i> I used </I>><i> %build </I>><i> %configure2_5x </I>><i> %make LDFLAGS="-lpthread" </I>><i> </I>><i> instead of </I>><i> %build </I>><i> %configure2_5x </I>><i> %make </I>><i> </I>><i> this allowed to package and I felt happy ;) ... but wrongly happy :( </I>><i> </I>><i> </I>><i> Now that I use a correct LDFLAGS I got new errors about other undefined </I>><i> references (thanks to --as-needed option) </I>><i> ... and I feel sad :( </I>><i> </I>><i> There came now undefined references to 'dlopen' 'dlerror' 'dlclose' </I>><i> </I>><i> I had to add -ldl to each Makefile.in </I>><i> </I> And overlinking again :) ><i> And now it's OK </I>><i> </I>><i> Thanks to all of you ! I'm now less ignorant than I was ... </I>><i> </I>><i> But packaging for Mageia will need more skill and more time than for </I>><i> Mandriva ... and more patches ! (hope it's worth of it) </I>><i> </I> Of course it is worth it... By finding and fixing issues like this (and also send the fix upstream) the quality of the code is improving... ><i> I will provide my spec and patch files to anyone (perhaps through </I>><i> bugzilla with a package request) </I> -- Thomas </PRE> <!--endarticle--> <HR> <P><UL> <!--threads--> <LI>Previous message: <A HREF="018866.html">[Mageia-dev] need some help to build a linuxsampler.rpm </A></li> <LI>Next message: <A HREF="018881.html">[Mageia-dev] need some help to build a linuxsampler.rpm </A></li> <LI> <B>Messages sorted by:</B> <a href="date.html#18868">[ date ]</a> <a href="thread.html#18868">[ thread ]</a> <a href="subject.html#18868">[ subject ]</a> <a href="author.html#18868">[ author ]</a> </LI> </UL> <hr> <a href="https://www.mageia.org/mailman/listinfo/mageia-dev">More information about the Mageia-dev mailing list</a><br> </body></html>