Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 55916
Alias:
Product:
Component:
Status: CLOSED
Resolution: FIXED
Assigned To: dotnet <dotnet@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Robert R. Richter <duncan@excelsior-online.org>
Add CC:
CC:
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
libgdiplus-1.0-r1.ebuild Fixed libgdiplus ebuild text/plain Peter Johanson (RETIRED) 2004-07-02 17:58 0000 1.24 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 55916 depends on: Show dependency tree
Bug 55916 blocks:
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.




View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2004-07-02 15:01 0000
libgdiplus-0.10 with mono-0.97 made no problems...
...BUT now I switched to Mono 1.0 Final and libgdiplus-1.0 and got an error
System.TypeInitializationException: An exception was thrown by the type initializer for System.Drawing.GDIPlus ---> System.DllNotFoundException: gdiplus.dll
in any of my .NET-Applications using libgdiplus.

I found out that (after the emerge of mono-1.0 and libgdiplus-1.0) libgdiplus.dll.so is *MISSING* in /usr/lib


Reproducible: Always
Steps to Reproduce:
1. unmerge mono <= 0.97 and libgdiplus <= 0.10 if present. 
2. emerge mono-1.0 and libgdiplus-1.0
3. check /usr/lib for libgdiplus.dll.so (File is **MISSING**)

Actual Results:  
libgdiplus.dll.so is **MISSING** in /usr/lib


Expected Results:  
The presence of libgdiplus.dll.so in /usr/lib

Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0,
2.6.7-gentoo-r6)
=================================================================
System uname: 2.6.7-gentoo-r6 i686 Pentium III (Coppermine)
Gentoo Base System version 1.5.1
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X alsa apm arts avi berkdb cdr crypt cups dvd encode esd foomaticdb gdbm
gif gnome gpm gtk gtk2 gtkhtml imlib jpeg kde libg++ libwww mad mikmod motif
mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python
qt quicktime readline sdl slang spell ssl svga tcpd truetype x86 xml2 xmms xv zlib"

------- Comment #1 From Peter Johanson (RETIRED) 2004-07-02 15:22:58 0000 -------
Umm... when was this file ever around?

Can you explain to me what problems you are experiencing, not just what file you think is missing? The libgdiplus RPMs don't have this file, so it's not like we're missing something that should be there. The basic System.Drawing example in the gtk-sharp sample/ directory works fine for me still, so can you please provide a simple test case that causes the error you posted?

------- Comment #2 From Robert R. Richter 2004-07-02 16:15:50 0000 -------
I have never used the gtk-sharp samples, but if I am using the
System.Drawing.Bitmap and System.Drawing.Image APIs, I receive this error:
System.TypeInitializationException: An exception was thrown by the type
initializer for System.Drawing.GDIPlus ---> System.DllNotFoundException:
gdiplus.dll

Sample Code: hmm - I am using this APIs in the code of my Content Management
System (WebApplication), so it's not easy to cut out some lines of code, cause
this code is working in one of my custom webcontrols ... - hmm, the following
lines are not a working sample, but you should be able to see what APIs are
causing the error ... - BTW: this Code works perfectly on mono-0.97 and
libgdiplus-0.10 and I didn't changed a single line of code, I only upgraded to
mono-1.0 and libgdiplus-1.0 ...

Fragmented Code Example (Picture Resize Functions):
----------------------------------------------------------------------
                                myImageCheck = new
System.Drawing.Bitmap(myPicture.PostedFile.InputStream);
                                if ((myImageCheck.Size.Width > xSize) ||
(myImageCheck.Size.Height > ySize))
                                {
                                        //myPicisOK = false; CHANGED for
Image-Resizing ** EXPERIMENTAL **
                                        myCallback = new
System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);
                                        myOriginalImage = new
System.Drawing.Bitmap(myImageCheck);
                                        if ((myImageCheck.Size.Width >
myImageCheck.Size.Height) && (myImageCheck.Size.Width !=
myImageCheck.Size.Height))
                                        {
                                                switch(xSize)
                                                {
                                                        case 300:
                                                                Scale2X = 300;
                                                                Scale2Y = 200;
                                                                break;
                                                        case 150:
                                                                Scale2X = 150;
                                                                Scale2Y = 100;
                                                                break;
                                                        case 600:
                                                                Scale2X = 600;
                                                                Scale2Y = 300;
                                                                break;
                                                }
                                        }
                                        if ((myImageCheck.Size.Width <
myImageCheck.Size.Height) && (myImageCheck.Size.Width !=
myImageCheck.Size.Height))
                                        {
                                                switch(ySize)
                                                {
                                                        case 300:
                                                                Scale2X = 200;
                                                                Scale2Y = 300;
                                                                break;
                                                        case 150:
                                                                Scale2X = 100;
                                                                Scale2Y = 150;
                                                                break;
                                                        case 600:
                                                                Scale2X = 300;
                                                                Scale2Y = 600;
                                                                break;
                                                }
                                        }
                                        myScaledImage =
myOriginalImage.GetThumbnailImage(Scale2X, Scale2Y, myCallback, IntPtr.Zero);
                                        switch(myImageType)
                                        {
                                                case ".jpg":
                                                       
myScaledImage.Save(mypostedFile, System.Drawing.Imaging.ImageFormat.Jpeg);
                                                        break;
                                                case ".gif":
                                                       
myScaledImage.Save(mypostedFile, System.Drawing.Imaging.ImageFormat.Gif);
                                                        break;
                                        }

----------------------------------------------------------------------

                private bool ThumbnailCallback()
                {
                        return false;
                }

----------------------------------------------------------------------

------- Comment #3 From Peter Johanson (RETIRED) 2004-07-02 16:26:55 0000 -------
Okay, i've been experimenting with this, and i've been able both to reproduce
your problem, and find a very odd way to work around it.

Using the small sample from here:
http://www.vlad1.com/~vladimir/blog/archive/2004/Apr-07.html

I got the same error... Adding a call to Gtk.Application.Init() at the
beginning made the dll error disappear though. I'm looking into it further now.

------- Comment #4 From Robert R. Richter 2004-07-02 16:37:10 0000 -------
I have also a SuSE 9.0 Server up and running and I have installed all Mono-1.0
RPMs for SuSE 9.0 and my code runs fine under SuSE!

So I don't think it is a bug on mono-1.0 or libgdiplus-1.0 ...

The SuSE Server has a file under /usr/lib called libgdiplus.dll.so, so I think
this might be the problem (missing under Gentoo) ..?

------- Comment #5 From Peter Johanson (RETIRED) 2004-07-02 17:58:59 0000 -------
Created an attachment (id=34682) [details]
Fixed libgdiplus ebuild

Okay, please test this ebuild. There was a libtool problem, causing the
libgdiplus.so not to be linked properly.

As a resulted shared libs were f*cked, etc, etc. Please test ASAP and i will
get this into the tree.

------- Comment #6 From Robert R. Richter 2004-07-02 18:52:34 0000 -------
Your attached EBuild works perfectly - Excellent Job! Please put it into the
Tree!

...and THANK YOU - you 've saved my day :) !

------- Comment #7 From Peter Johanson (RETIRED) 2004-07-02 18:59:49 0000 -------
no problem. Just added the ebuild (with revision bump to make sure people get
the fix). marking FIXED.

------- Comment #8 From Robert R. Richter 2005-04-23 18:18:07 0000 -------
bug closed as it has been fixed and tested

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug