On 6/2/12 1:48 PM, Peter Dyballa wrote:
> Hello!
> 
> Trying to build Ghostscript 9.05 which cannot be built with Fink when  
> OpenJPEG is installed (because Fink sets the CPPFLAG -I/sw/include so  
> that GCC cannot use the C header files in the – maybe too experimental  
> – Ghostscript sources, even using "NoSetCPPFLAGS: true" does not  
> change this behaviour), I set:
> 
>       BuildConflicts: lcms, libopenjpeg, libopenjpeg-shlibs
> 
> The temporary removal of libopenjpeg and libopenjpeg-shlibs fails:
> 
>       fink -v -m -k -K --build-as-nobody --tests=on build ghostscript
>       Running in Maintainer Mode
>       Validating package file /sw/fink/dists/local/main/finkinfo/ 
> ghostscript.info...
>       Package looks good!
>       The package 'ghostscript' will be built without being installed.
>       Reading build dependency for ghostscript-9.05-1...
>       Reading dependency for ghostscript-9.05-1...
>       Reading build conflict for ghostscript-9.05-1...
>       The following package will be built:
>        ghostscript
>       The following 3 packages might be temporarily removed:
>        lcms libopenjpeg libopenjpeg-shlibs
>       Do you want to continue? [Y/n] The following packages must be  
> temporarily removed, but there are no .debs to
>       restore them from:
>         libopenjpeg libopenjpeg-shlibs
>       Exiting with failure.
> 
> The *real* cause is that possibly these
> 
>   i   poppler-data    1:0.2.1-1       Character-encoding files for poppler
>   i   poppler4        0.10.7-2        PDF rendering library
>   i   poppler4-glib   0.10.7-4        PDF rendering library (GLIB Interface)
>   i   poppler4-glib-shlibs    0.10.7-4        PDF rendering library (GLIB  
> Interface)
>   i   poppler4-shlibs 0.10.7-2        PDF rendering library
>   i   poppler4-xpdf   0.10.7-1        PDF rendering library (alternate 
> interface)
> 
> depend on libopenjpeg and libopenjpeg-shlibs. But of course I did not  
> have the .debs! After rebuilding them Fink now reports:
> 
>       Reading buildlock packages...
>               All buildlocks accounted for.
>       /sw/bin/dpkg-lockwait --remove libopenjpeg-shlibs
>       dpkg: dependency problems prevent removal of libopenjpeg-shlibs:
>        poppler4-glib-shlibs depends on libopenjpeg-shlibs.
>        poppler4-shlibs depends on libopenjpeg-shlibs.
>        imlib-shlibs depends on libopenjpeg-shlibs.
>       /sw/bin/dpkg: error processing libopenjpeg-shlibs (--remove):
>        dependency problems - not removing
>       Errors were encountered while processing:
>        libopenjpeg-shlibs
>       ### execution of /sw/bin/dpkg-lockwait failed, exit code 1
>       ERROR: Can't remove package(s). If the above error message mentions
>       dependency problems, you can try
>         fink remove --recursive libopenjpeg-shlibs
>       This will attempt to remove the package(s) specified as well as ALL  
> packages
>       that depend on it.
>       Failed: can't remove package libopenjpeg-shlibs
> 
> Why can't it remove recursively and reinstall afterwards?

Recursive removal and BuildConflict removal use different tools.

Removing a list of BuildConflicts from a .info file means that fink

1) Makes a list of those packages
2) Removes them
3) Builds
4) Installs them again

Recursive removal, on the other hand, uses apt-get to remove the
packages.  We don't have anything in place right now to transfer the
list of packages from apt-get to fink.

> 
> The second and IMO real bug in Fink is that it does not display its  
> usual footer:
> 
>       Package manager version: 0.32.6
>       Distribution version: selfupdate-cvs Thu May 31 19:04:49 2012, 10.5,  
> powerpc
>       Trees: local/main stable/main stable/crypto unstable/main unstable/ 
> crypto
>       Xcode: 3.1.4
>       Max. Fink build jobs:  1
> 
> 

Why should it matter?

That footer is set to display only if the build operation actually
starts.  If the error is in the dependencies, then it's going to affect
_everybody_ regardless of their system configuration.

> 
> --
> Greetings
> 
>    Pete
> 
> A morning without coffee is like something without something else.
> 
> 

The simple solution is not to BuildConflict on a -shlibs, ever.

And in general, BuildConflicts should be regarded as an option of last
resort.


-- 
Alexander Hansen, Ph.D.
Fink User Liaison
http://finkakh.wordpress.com/2012/02/21/got-job/

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Fink-users mailing list
[email protected]
List archive:
http://news.gmane.org/gmane.os.macosx.fink.user
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-users

Reply via email to