[CinePaint] Patch for Fedora DSO compile error
Peter Langfelder <[email protected]> Sat, 11 Feb 2012 12:35:58 -0800
| Newsgroups | gmane.comp.video.cinepaint.user |
|---|---|
| Message-ID | <CA+hbrhU-nhHUc-wLCAQu-9UXmvdjHrzehV0644h3yW1ZfrY78w@mail.gmail.com> |
On Sat, Feb 11, 2012 at 10:07 AM, Frank Peters <[email protected]> w= rote: > > I am also completely in the dark when it comes to autotools and make. > But in this case the solution is rather straightforward. > > Every directory in the cinepaint source contains a Makefile.in which > is used during the configure process to produce the actual Makefiles. > In the Makefile.in there is a variable called LDADD which is defined > to include several library links. =A0To fix the dso problem, all that need > be done is to append the suitable library link (-lc, -lm, -lstdc++, etc.) > to the LDADD definition. > > If someone using Redhat/Fedora would take the time to determine, by > doing an ordinary configure/make with cinepaint-1.0, what links need > to be included in what Makefile, then a patch for all the Makefile.in > files could be created. > > Maybe just patching all the Makefile.in files with several extra links > would also work. =A0Maybe someone using Redhat/Fedora could also do this. Hi Frank and all Fedora users stuck with the DSO problem: I created a patch that should hopefully solve the problem and make cinepaint_1.0.0 compile. I made the following chages: 1. Fix a compile error that related to a double definition of type ImfHalf. I solved this by commenting out the duplicate definition in lib/float16.h and including the appropriate header ../libhalf/cinepaint_half.h . 2. Disable the icc_examin plugin since I wasn't able to get rid of the DSO error even after modifying Makefile.in. The icc_examin plugin also fails to compile if FTGL development files are not present, even though the configure script is silent about them. 3. Fix all other DSO errors by including the necessary libraries in the LDADD macro in Makefile.in files. I have not changed the Makefile.am files. I suppose this could be done as well since they seem to be used during the autogen.sh step. Here are the steps to compile cinepaint: 1. Download the cinepaint-1.0.tgz tarball and unpack it: tar -xvzf cinepaint-1.0.tgz 2. Navigate to the directory cinepaint, run autogen.sh, then navigate back = up. cd cinepaint bash autogen.sh cd .. 3. Download my patch from http://peterlangfelder.com/Software/cinepaint_1.0.0_patchForFedoraDSObreaka= ge.patch and save it in the same directory as the original tarball. 4. Apply the patch: patch -p0 < cinepaint_1.0.0_patchForFedoraDSObreakage.patch 5. Navigate to the directory cinepaint and follow the standard configure, make, make install steps. cd cinepaint ./configure make sudo make install Let me know if this does not work - I tested the whole process and it works for me (Fedora 13). Best, Peter ---------------------------------------------------------------------------= --- Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing = also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/