Re: [CinePaint] Fedora 16

Peter Langfelder <[email protected]> Wed, 14 Mar 2012 08:50:09 -0700
Newsgroups gmane.comp.video.cinepaint.user
Message-ID <CA+hbrhXJe2HG5whu+DkEssmGdDWqehDmgp549s0vyaV+b4vWWA@mail.gmail.com>
It see

On Wed, Mar 14, 2012 at 6:11 AM, iCy-fLaME <[email protected]> wrote:
> Anyone tried Cinepaint on Fedora 16?
>
> The yum package will crash every time I load an jpeg image.
>
> And I haven't been able to compile my own copy neither.

>
> /usr/bin/ld: ../../libhalf/.libs/cinepaint_half.o: undefined reference
> to symbol 'std::ios_base::Init::~Init()@@GLIBCXX_3.4'
> /usr/bin/ld: note: 'std::ios_base::Init::~Init()@@GLIBCXX_3.4' is
> defined in DSO /usr/lib64/libstdc++.so.6 so try adding it to the
> linker command line
> /usr/lib64/libstdc++.so.6: could not read symbols: Invalid operation
> collect2: ld returned 1 exit status
> make[2]: *** [blur] Error 1
> make[2]: Leaving directory `/root/build/cinepaint/plug-ins/blur'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/root/build/cinepaint/plug-ins'
> make: *** [all-recursive] Error 1

You seem to be running into the DSO issue. Here's a solution that
worked for several people, described in a copy of an older email.

HTH,

Peter

------------------------------------------------------------------------------------
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_patchForFedoraDSObreakage.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/