Cairo on VW

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Cairo on VW

akevalion
Hi Chris

It was good to meet you at ESUG,
I am now working on making Sunburst use Cairo, to benefit from all the good things it brings. But I am unfortunately facing a problem for which I do not know how to solve,
Apparently VW cannot find the following DLLs:

libcairo-2.dll (I got it from cairographics.org)
libpixman-1-0.dll (from Pharo)
libpng-3.dll (from Pharo)
zlib1.dll (from Pharo)

I have copied these dlls a bit everywhere hoping to find the right location:
c:\Program Files (x86)\Cincom\vw7.9.1pul\bin\win\
c:\Program Files (x86)\Cincom\vw7.9.1pul\bin\win64\
c:\Program Files (x86)\Cincom\vw7.9.1pul\dllcc\

In the folder containg the image. I have also tried to make the Shell point to them y using a Path variable. The primitive #primLoadLibrary: fails with #'libcairo-2.dll'
I also tried to follow the documentation of VW7.8 on Cairo, but I still need more luck :

Do you have any idea on what I should investigate further?
Reply | Threaded
Open this post in threaded view
|

Re: Cairo on VW

Maarten Mostert-2
Try to reinstall VW and make sure to check cairo graphics.
VW comes with ready to run Dll's that work just fine on OSX and Windows. If you use other libraries placed elsewhere you have to indicate so in the Cairo package.
Regards,
@+Maarten,  

Le 26 sept. 2013 à 21:56, akevalion <[hidden email]> a écrit :

> Hi Chris
>
> It was good to meet you at ESUG,
> I am now working on making Sunburst use Cairo, to benefit from all the good
> things it brings. But I am unfortunately facing a problem for which I do not
> know how to solve,
> Apparently VW cannot find the following DLLs:
>
> libcairo-2.dll (I got it from cairographics.org)
> libpixman-1-0.dll (from Pharo)
> libpng-3.dll (from Pharo)
> zlib1.dll (from Pharo)
>
> I have copied these dlls a bit everywhere hoping to find the right location:
> c:\Program Files (x86)\Cincom\vw7.9.1pul\bin\win\
> c:\Program Files (x86)\Cincom\vw7.9.1pul\bin\win64\
> c:\Program Files (x86)\Cincom\vw7.9.1pul\dllcc\
>
> In the folder containg the image. I have also tried to make the Shell point
> to them y using a Path variable. The primitive #primLoadLibrary: fails with
> #'libcairo-2.dll'
> I also tried to follow the documentation of VW7.8 on Cairo, but I still need
> more luck :
>
> Do you have any idea on what I should investigate further?
>
>
>
> --
> View this message in context: http://forum.world.st/Cairo-on-VW-tp4710621.html
> Sent from the VisualWorks mailing list archive at Nabble.com.
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: Cairo on VW

Stewart MacLean
In reply to this post by akevalion
Hi Akevalion,

A while back I went through similar pain. Here is a post I made after I
got it working. I recall trying to place files on the path, but got it
working using the gtk libraries and editing the DLLCC class to point to
the .dll directories.

Good luck! cheers,

Stewart

Hi,

 

Here's how I got Pango/Cairo to work on windows Vista and VW 7.9.1:

 

- download the GTK bundle (gtk+-bundle_2.24.10-20120208_win32) and unzip

- take a fresh image

- load the latest basic Pango package from Store (auto loads
CairoGraphics package)

- edit the LibPango and LibCairo external interface class definitions to
add the path to gtk binaries directory:

      eg #(#libraryDirectories
#('C:\...\gtk\gtk+-bundle_2.24.10-20120208_win32\bin'))

- and execute the code:

 

| view gc |

view := ScheduledControllers activeController view.

gc := view graphicsContext.

gc newCairoContextWhile:

                [:cr |

                cr

                        source: ColorValue red;

                        moveToX: 110 y: 20.

                (Pango.Layout text: 'Hello, World! ' , ObjectMemory
versionId printString)

                        fontDescriptionString: 'Calibri, 60';

                        showOn: cr]

 

The key is to set the library directory on LibCairo, otherwise you get a
load library error on libpangocairo-1.0-0.dll (from LibPango
pango_cairo_font_map_get_default ) - go figure!

 

If you save the image, you'll need to execute:

 

Smalltalk.Pango.ShapeAttribute initializeCallbacks.

 

to fix bad argument error, as it hangs onto the C callback function.

 

To isolate dependent dlls use Dependency Walker and drag the libraries
referenced in LibCairo and LibPango onto the depends UI - it will list
the dependent dlls.

 

That's the first step - thanks to everyone who has helped!

 

Cheers,

 

Stewart

 

 

 



>-----Original Message-----
>From: [hidden email] [mailto:[hidden email]] On
Behalf
>Of akevalion
>Sent: 27 September 2013 7:56 a.m.
>To: [hidden email]
>Subject: [vwnc] Cairo on VW
>
>Hi Chris
>
>It was good to meet you at ESUG,
>I am now working on making Sunburst use Cairo, to benefit from all the
good
>things it brings. But I am unfortunately facing a problem for which I
do

>not
>know how to solve,
>Apparently VW cannot find the following DLLs:
>
>libcairo-2.dll (I got it from cairographics.org)
>libpixman-1-0.dll (from Pharo)
>libpng-3.dll (from Pharo)
>zlib1.dll (from Pharo)
>
>I have copied these dlls a bit everywhere hoping to find the right
>location:
>c:\Program Files (x86)\Cincom\vw7.9.1pul\bin\win\
>c:\Program Files (x86)\Cincom\vw7.9.1pul\bin\win64\
>c:\Program Files (x86)\Cincom\vw7.9.1pul\dllcc\
>
>In the folder containg the image. I have also tried to make the Shell
point
>to them y using a Path variable. The primitive #primLoadLibrary: fails
with

>#'libcairo-2.dll'
>I also tried to follow the documentation of VW7.8 on Cairo, but I still
>need
>more luck :
>
>Do you have any idea on what I should investigate further?
>
>
>
>--
>View this message in context: http://forum.world.st/Cairo-on-VW-
>tp4710621.html
>Sent from the VisualWorks mailing list archive at Nabble.com.
>_______________________________________________
>vwnc mailing list
>[hidden email]
>http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc