how to add FTPlugin

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

how to add FTPlugin

laurent laffont
 
Hi,

I'm a real newbie on vm stuff. I've managed to compile squeak vm 3.11-3.2135 on Linux. Now I would like to add FTPlugin as Pharo needs it, but I cannot find where to get it nor  how to include it in the build process.  :(

Cheers,

Laurent 
Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

David T. Lewis
 
On Sun, Jan 24, 2010 at 04:25:42PM +0100, laurent laffont wrote:
>  
> Hi,
>
> I'm a real newbie on vm stuff. I've managed to compile squeak vm 3.11-3.2135
> on Linux. Now I would like to add FTPlugin as Pharo needs it, but I cannot
> find where to get it nor  how to include it in the build process.  :(

Hi Laurent,

Are you using VMMaker to generate your sources? You will need to do
this in order to add another plugin such as FTPlugin. If you need
help with this, just ask.

John, will need to correct me if the following is not right, as I have
not looked at FTPlugin in a while and I know he has done recent work
to update it for 64 bit issues.

Assuming that you are using VMMaker, then you just need to add FTPlugin.
First load package FreeType from here:
  MCHttpRepository
        location: 'http://www.squeaksource.com/FreeTypePlus'
        user: ''
        password: ''

Then load FreeType-Plugin from here:
  MCHttpRepository
        location: 'http://source.impara.de/freetype'
        user: ''
        password: ''

For reference, here are the repositories for plugins that I know about
(and I'm sure it is not all up to date, so corrections are welcome):
  http://squeaksource.com/VMMaker/update-dtl.2.mcm

Once this is done, you should be able to open a new VMMaker window,
or click the "Rescan" button on a VMMaker tool that is already open.
Look for "FT2Plugin" in the left hand pane, and drag it over to
either the "Internal Plugins" or "External Plugins" pane, depending
on how you want to build it (probably external would be a good choice
for this plugin).

>From there you should be able generate sources, and the FT2Plugin
will be included in the next build.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

laurent laffont
 
On Sun, Jan 24, 2010 at 5:09 PM, David T. Lewis <[hidden email]> wrote:

On Sun, Jan 24, 2010 at 04:25:42PM +0100, laurent laffont wrote:
>
> Hi,
>
> I'm a real newbie on vm stuff. I've managed to compile squeak vm 3.11-3.2135
> on Linux. Now I would like to add FTPlugin as Pharo needs it, but I cannot
> find where to get it nor  how to include it in the build process.  :(

Hi Laurent,

Are you using VMMaker to generate your sources? You will need to do
this in order to add another plugin such as FTPlugin. If you need
help with this, just ask.

John, will need to correct me if the following is not right, as I have
not looked at FTPlugin in a while and I know he has done recent work
to update it for 64 bit issues.

Assuming that you are using VMMaker, then you just need to add FTPlugin.
First load package FreeType from here:
 MCHttpRepository
       location: 'http://www.squeaksource.com/FreeTypePlus'
       user: ''
       password: ''

Then load FreeType-Plugin from here:
 MCHttpRepository
       location: 'http://source.impara.de/freetype'
       user: ''
       password: ''

For reference, here are the repositories for plugins that I know about
(and I'm sure it is not all up to date, so corrections are welcome):
 http://squeaksource.com/VMMaker/update-dtl.2.mcm

Once this is done, you should be able to open a new VMMaker window,
or click the "Rescan" button on a VMMaker tool that is already open.
Look for "FT2Plugin" in the left hand pane, and drag it over to
either the "Internal Plugins" or "External Plugins" pane, depending
on how you want to build it (probably external would be a good choice
for this plugin).

>From there you should be able generate sources, and the FT2Plugin
will be included in the next build.

Dave


Big thank you !!  I'll try this.

Laurent 

Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

johnmci
In reply to this post by David T. Lewis

I rebuilt the plugin for 32/64bit VM and 32bit Image support on the mac a few months ago and
push the 64bit fixes to http://source.impara.de/freetype
So this should work.

I'm not sure if the freetype plugin is linked statically or not with the freetype binary.
This was a key issue on the macintosh where the supplied freetype binaries trailed
key fixes for font usability on the mac.

On 2010-01-24, at 8:09 AM, David T. Lewis wrote:

>
> On Sun, Jan 24, 2010 at 04:25:42PM +0100, laurent laffont wrote:
>>
>> Hi,
>>
>> I'm a real newbie on vm stuff. I've managed to compile squeak vm 3.11-3.2135
>> on Linux. Now I would like to add FTPlugin as Pharo needs it, but I cannot
>> find where to get it nor  how to include it in the build process.  :(
>
> Hi Laurent,
>
> Are you using VMMaker to generate your sources? You will need to do
> this in order to add another plugin such as FTPlugin. If you need
> help with this, just ask.
>
> John, will need to correct me if the following is not right, as I have
> not looked at FTPlugin in a while and I know he has done recent work
> to update it for 64 bit issues.
>
> Assuming that you are using VMMaker, then you just need to add FTPlugin.
> First load package FreeType from here:
>  MCHttpRepository
> location: 'http://www.squeaksource.com/FreeTypePlus'
> user: ''
> password: ''
>
> Then load FreeType-Plugin from here:
>  MCHttpRepository
> location: 'http://source.impara.de/freetype'
> user: ''
> password: ''
>
> For reference, here are the repositories for plugins that I know about
> (and I'm sure it is not all up to date, so corrections are welcome):
>  http://squeaksource.com/VMMaker/update-dtl.2.mcm
>
> Once this is done, you should be able to open a new VMMaker window,
> or click the "Rescan" button on a VMMaker tool that is already open.
> Look for "FT2Plugin" in the left hand pane, and drag it over to
> either the "Internal Plugins" or "External Plugins" pane, depending
> on how you want to build it (probably external would be a good choice
> for this plugin).
>
>> From there you should be able generate sources, and the FT2Plugin
> will be included in the next build.
>
> Dave
>

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================




Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

laurent laffont
In reply to this post by laurent laffont
 
Without problems it's not fun :). For VMMaker I use the unix-3.11.3.2135-vmm.tar.gz image found on http://squeakvm.org/unix/

First I need to change FTPlugin.c because build process cannot fint <tttables.h>. With 
#include <freetype/tttables.h>
it works. But it may comes from my distribution (ArchLinux, although I have built several packages without problems).

If the plugin is configured as external, it's not loaded when I run last pharo image. I don't know if I need to explicitly load a plugin (and how ?).

If I put the plugin as internal, linking fails:
Linking C executable squeakvm                                                                                       
FT2Plugin/libFT2Plugin.a(FT2Plugin.c.o): In function `primitiveGetFaceCharIndex':                                   
/home/lol/sandbox/pharo/vmmaker/Squeak-3.11.3.2135-src/unix/src/vm/intplugins/FT2Plugin/FT2Plugin.c:666: undefined reference to `FT_Get_Char_Index'                                                                                     
FT2Plugin/libFT2Plugin.a(FT2Plugin.c.o): In function `primitiveNewMemoryFaceFromExternalMemoryAndIndex':            
/home/lol/sandbox/pharo/vmmaker/Squeak-3.11.3.2135-src/unix/src/vm/intplugins/FT2Plugin/FT2Plugin.c:1448: undefined reference to `FT_New_Memory_Face' 

I suppose it does not find  libfreetype.so (which is in /usr/lib/libfreetype.so on my machine) ? I don't know how to specify lib path with squeak build process...

Cheers,

Laurent


On Sun, Jan 24, 2010 at 6:15 PM, laurent laffont <[hidden email]> wrote:
On Sun, Jan 24, 2010 at 5:09 PM, David T. Lewis <[hidden email]> wrote:

On Sun, Jan 24, 2010 at 04:25:42PM +0100, laurent laffont wrote:
>
> Hi,
>
> I'm a real newbie on vm stuff. I've managed to compile squeak vm 3.11-3.2135
> on Linux. Now I would like to add FTPlugin as Pharo needs it, but I cannot
> find where to get it nor  how to include it in the build process.  :(

Hi Laurent,

Are you using VMMaker to generate your sources? You will need to do
this in order to add another plugin such as FTPlugin. If you need
help with this, just ask.

John, will need to correct me if the following is not right, as I have
not looked at FTPlugin in a while and I know he has done recent work
to update it for 64 bit issues.

Assuming that you are using VMMaker, then you just need to add FTPlugin.
First load package FreeType from here:
 MCHttpRepository
       location: 'http://www.squeaksource.com/FreeTypePlus'
       user: ''
       password: ''

Then load FreeType-Plugin from here:
 MCHttpRepository
       location: 'http://source.impara.de/freetype'
       user: ''
       password: ''

For reference, here are the repositories for plugins that I know about
(and I'm sure it is not all up to date, so corrections are welcome):
 http://squeaksource.com/VMMaker/update-dtl.2.mcm

Once this is done, you should be able to open a new VMMaker window,
or click the "Rescan" button on a VMMaker tool that is already open.
Look for "FT2Plugin" in the left hand pane, and drag it over to
either the "Internal Plugins" or "External Plugins" pane, depending
on how you want to build it (probably external would be a good choice
for this plugin).

>From there you should be able generate sources, and the FT2Plugin
will be included in the next build.

Dave


Big thank you !!  I'll try this.

Laurent 


Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

Levente Uzonyi-2
 
On Sun, 24 Jan 2010, laurent laffont wrote:

> If the plugin is configured as external, it's not loaded when I run last
> pharo image. I don't know if I need to explicitly load a plugin (and how
> ?).
>
> If I put the plugin as internal, linking fails:
> Linking C executable squeakvm                                          
>  
> FT2Plugin/libFT2Plugin.a(FT2Plugin.c.o): In function
> `primitiveGetFaceCharIndex':                                   
> /home/lol/sandbox/pharo/vmmaker/Squeak-3.11.3.2135-src/unix/src/vm/intplugins/FT2Plugin/FT2Plugin.c:666:
> undefined reference to `FT_Get_Char_Index'
>                                                                        
>           
> FT2Plugin/libFT2Plugin.a(FT2Plugin.c.o): In function
> `primitiveNewMemoryFaceFromExternalMemoryAndIndex':            
> /home/lol/sandbox/pharo/vmmaker/Squeak-3.11.3.2135-src/unix/src/vm/intplugins/FT2Plugin/FT2Plugin.c:1448:
> undefined reference to
> `FT_New_Memory_Face' 
>
> I suppose it does not find  libfreetype.so (which is in
> /usr/lib/libfreetype.so on my machine) ? I don't know how to specify lib
> path with squeak
> build process...
I created a directory named FT2Plugin in platforms/unix/plugins, then
created a file there named config.cmake .
The file contains the following line:
PLUGIN_FIND_LIBRARY(FT2 freetype)

This adds a check for the library and uses it while linking. I built the
plugin as external and it works on ubuntu 9.04.


Levente
Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

David T. Lewis
 
On Mon, Jan 25, 2010 at 02:52:11AM +0100, Levente Uzonyi wrote:

>  
> On Sun, 24 Jan 2010, laurent laffont wrote:
>
> >If the plugin is configured as external, it's not loaded when I run last
> >pharo image. I don't know if I need to explicitly load a plugin (and how
> >?).
> >
> >If I put the plugin as internal, linking fails:
> >Linking C executable squeakvm ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
> >?
> >FT2Plugin/libFT2Plugin.a(FT2Plugin.c.o): In function
> >`primitiveGetFaceCharIndex': ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
> >/home/lol/sandbox/pharo/vmmaker/Squeak-3.11.3.2135-src/unix/src/vm/intplugins/FT2Plugin/FT2Plugin.c:666:
> >undefined reference to `FT_Get_Char_Index'
> >? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
> >? ? ? ? ??
> >FT2Plugin/libFT2Plugin.a(FT2Plugin.c.o): In function
> >`primitiveNewMemoryFaceFromExternalMemoryAndIndex': ? ? ? ? ? ?
> >/home/lol/sandbox/pharo/vmmaker/Squeak-3.11.3.2135-src/unix/src/vm/intplugins/FT2Plugin/FT2Plugin.c:1448:
> >undefined reference to
> >`FT_New_Memory_Face'?
> >
> >I suppose it does not find ?libfreetype.so (which is in
> >/usr/lib/libfreetype.so on my machine) ? I don't know how to specify lib
> >path with squeak
> >build process...
>
> I created a directory named FT2Plugin in platforms/unix/plugins, then
> created a file there named config.cmake .
> The file contains the following line:
> PLUGIN_FIND_LIBRARY(FT2 freetype)
>
> This adds a check for the library and uses it while linking. I built the
> plugin as external and it works on ubuntu 9.04.

Levente,

Excellent. I think you are fixing some things that may not have been working
yet since the conversion to cmake. Thanks for the updates and please keep
sending them to the vm-dev list, much appreciated.

Just to check, are you building this on 32-bit ubuntu, or 64 bit?

Dave

Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

laurent laffont
In reply to this post by Levente Uzonyi-2
 

I suppose it does not find  libfreetype.so (which is in /usr/lib/libfreetype.so on my machine) ? I don't know how to specify lib path with squeak
build process...

I created a directory named FT2Plugin in platforms/unix/plugins, then created a file there named config.cmake .
The file contains the following line:
PLUGIN_FIND_LIBRARY(FT2 freetype)

This adds a check for the library and uses it while linking. I built the plugin as external and it works on ubuntu 9.04.


Levente


It works (ArchLinux 32 bits) !!  Thank you Levente.

Laurent 

Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] how to add FTPlugin

Levente Uzonyi-2
In reply to this post by David T. Lewis
 
On Sun, 24 Jan 2010, David T. Lewis wrote:

>
> Levente,
>
> Excellent. I think you are fixing some things that may not have been working
> yet since the conversion to cmake. Thanks for the updates and please keep
> sending them to the vm-dev list, much appreciated.

It's just another quick-and-dirty fix, I didn't look deep into the cmake
stuff, so it's probably not the perfect solution.

>
> Just to check, are you building this on 32-bit ubuntu, or 64 bit?
>

It's 32-bit ubuntu 9.04.


Levente

> Dave
>
>