Mac PLugin Client-Server problem

View: New views
8 Messages — Rating Filter:   Alert me  

Mac PLugin Client-Server problem

by adam leff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks to your help, I have been able to build a plugin that works on mac and windows in standalone, but I am having another problem now.  When I put the plugin on the server and try to run it from other computers, I am getting "method not found" errors.  However, the plugin works correctly on the computer that I built it on.  This plugin uses external libraries, but I have been compiling it statically, or so I thought.  I am using XCode 2.4.1 to build it.  Is there a setting to make sure that everything is compiled in statically or is there something else that I am forgetting to do?

Thanks,
Adam Leff
Slicksurface Inc

Re: Mac PLugin Client-Server problem

by Matthias Schmidt-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Am/On Tue, 4 Dec 2007 17:08:32 -0500 schrieb/wrote adam leff:

>Thanks to your help, I have been able to build a plugin that works on mac
>and windows in standalone, but I am having another problem now.  When I put
>the plugin on the server and try to run it from other computers, I am
>getting "method not found" errors.  However, the plugin works correctly on
>the computer that I built it on.  This plugin uses external libraries, but I
>have been compiling it statically, or so I thought.  I am using XCode
>2.4.1to build it.  Is there a setting to make sure that everything is
>compiled in
>statically or is there something else that I am forgetting to do?

could it be that you built the plugin for the os of the box you built it only?
Or does the server run 10.3.x and the plugin was built for 10.4 only?


All the best

Matthias

------------------------------------------------------------------------
Admilon Consulting GmbH <http://www.admilon.de>
Am Wiesengrund 9a, 90584 Allersberg
Geschaeftsfuehrer: Peter Frank, Matthias Schmidt
Amtsgericht Nuernberg: HRB 21750
Tel.: 09872-31 43 30
------------------------------------------------------------------------


**********************************************************************
4D Plugins hosted by 4D, Inc.                      http://www.4D.com/     
   

4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************


Re: Mac PLugin Client-Server problem

by adam leff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

No, both machines are running 10.4

Adam Leff
Slicksurface Inx

On Dec 4, 2007 10:35 PM, Matthias Schmidt <4D_info@...> wrote:
Am/On Tue, 4 Dec 2007 17:08:32 -0500 schrieb/wrote adam leff:

>Thanks to your help, I have been able to build a plugin that works on mac
>and windows in standalone, but I am having another problem now.  When I put
>the plugin on the server and try to run it from other computers, I am
>getting "method not found" errors.  However, the plugin works correctly on
>the computer that I built it on.  This plugin uses external libraries, but I
>have been compiling it statically, or so I thought.  I am using XCode
>2.4.1to build it.  Is there a setting to make sure that everything is
>compiled in
>statically or is there something else that I am forgetting to do?

could it be that you built the plugin for the os of the box you built it only?
Or does the server run 10.3.x and the plugin was built for 10.4 only?


All the best

Matthias

------------------------------------------------------------------------
Admilon Consulting GmbH <http://www.admilon.de>
Am Wiesengrund 9a, 90584 Allersberg
Geschaeftsfuehrer: Peter Frank, Matthias Schmidt
Amtsgericht Nuernberg: HRB 21750
Tel.: 09872-31 43 30
------------------------------------------------------------------------


**********************************************************************
4D Plugins hosted by 4D, Inc.                       http://www.4D.com/


4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************



Re: Mac PLugin Client-Server problem

by adam leff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

In the past hour I've been able to narrow the problem down.  It appears that while the plugin is replicating to the 4D directory on the other computer, 4D client is not opening it.  Looking at the files open using Activity Monitor, I can see that on the computer that I built the plugin on the replicated plugin is being used, while on the other computer it is not.  Is there some way to force 4D to see that the plugin is there?

Adam Leff
Slicksurface Inc

On Dec 5, 2007 10:10 AM, adam leff <adam.s.leff@...> wrote:
No, both machines are running 10.4

Adam Leff
Slicksurface Inx

On Dec 4, 2007 10:35 PM, Matthias Schmidt <4D_info@...> wrote:
Am/On Tue, 4 Dec 2007 17:08:32 -0500 schrieb/wrote adam leff:

>Thanks to your help, I have been able to build a plugin that works on mac
>and windows in standalone, but I am having another problem now.  When I put
>the plugin on the server and try to run it from other computers, I am
>getting "method not found" errors.  However, the plugin works correctly on
>the computer that I built it on.  This plugin uses external libraries, but I
>have been compiling it statically, or so I thought.  I am using XCode
>2.4.1to build it.  Is there a setting to make sure that everything is
>compiled in
>statically or is there something else that I am forgetting to do?

could it be that you built the plugin for the os of the box you built it only?
Or does the server run 10.3.x and the plugin was built for 10.4 only?


All the best

Matthias

------------------------------------------------------------------------
Admilon Consulting GmbH <http://www.admilon.de>
Am Wiesengrund 9a, 90584 Allersberg
Geschaeftsfuehrer: Peter Frank, Matthias Schmidt
Amtsgericht Nuernberg: HRB 21750
Tel.: 09872-31 43 30
------------------------------------------------------------------------


**********************************************************************
4D Plugins hosted by 4D, Inc.                       http://www.4D.com/


4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************




Re: Mac PLugin Client-Server problem

by Rob Laveaux :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 4 dec 2007, at 23:08, adam leff wrote:

> Thanks to your help, I have been able to build a plugin that works  
> on mac and windows in standalone, but I am having another problem  
> now.  When I put the plugin on the server and try to run it from  
> other computers, I am getting "method not found" errors.  However,  
> the plugin works correctly on the computer that I built it on.  This  
> plugin uses external libraries, but I have been compiling it  
> statically, or so I thought.

It is likely that the reason why your plugin fails to load is because  
the OS fails to resolve a symbol. Usually such information is logged  
to stderr and can be viewed using the Console application or using  
XCode (you need to launch 4D Client from XCode).

It would help if you mentioned which libraries you are linking to  
(name, type etc.)?

- Rob Laveaux

--------------------------------------------------------
Pluggers Software
Bleriotlaan 62
2497 BM  Den Haag
The Netherlands

Email: rob.laveaux@...
Website: http://www.pluggers.nl

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


**********************************************************************
4D Plugins hosted by 4D, Inc.                      http://www.4D.com/     
   

4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************


Re: Mac PLugin Client-Server problem

by adam leff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am linking to the Ghostscript framework.  If it can't find the library, is there some way to replicate that alongside the plugin?

Adam Leff
Slicksurface Inc

On Dec 5, 2007 12:31 PM, Rob Laveaux <rob.laveaux@...> wrote:

On 4 dec 2007, at 23:08, adam leff wrote:

> Thanks to your help, I have been able to build a plugin that works
> on mac and windows in standalone, but I am having another problem
> now.  When I put the plugin on the server and try to run it from
> other computers, I am getting "method not found" errors.  However,
> the plugin works correctly on the computer that I built it on.  This
> plugin uses external libraries, but I have been compiling it
> statically, or so I thought.

It is likely that the reason why your plugin fails to load is because
the OS fails to resolve a symbol. Usually such information is logged
to stderr and can be viewed using the Console application or using
XCode (you need to launch 4D Client from XCode).

It would help if you mentioned which libraries you are linking to
(name, type etc.)?

- Rob Laveaux

--------------------------------------------------------
Pluggers Software
Bleriotlaan 62
2497 BM  Den Haag
The Netherlands

Email: rob.laveaux@...
Website: http://www.pluggers.nl

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


**********************************************************************
4D Plugins hosted by 4D, Inc.                      http://www.4D.com/


4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************



Re: Mac PLugin Client-Server problem

by Rob Laveaux :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 5 dec 2007, at 18:54, adam leff wrote:

> I am linking to the Ghostscript framework.

Ah, that's definitely not a static library.

>  If it can't find the library, is there some way to replicate that  
> alongside the plugin?

No. You'll have to install the framework in one of the "Frameworks"  
folders of each computer that will be using the plugin.
Or you can embed it in the Frameworks folder of 4D Client.

There are several problems when using embedded frameworks in a plugin:
1. Frameworks use symbolic links. 4D Client/Server does not support  
transfering symbolic links from  server to client. This is  
understandable because the server might be on Windows. And Windows  
does not know about Mac specific file attributes. What you can do  
though is use a ".bundle" instead of a ".framework" but this leads you  
to the next problems.
2. When the OS tries to load your plugin, it will still fail because  
it will not look inside the embedded "Frameworks" folder of your  
plugin. You can work around that by not linking to the bundle/
framework at all. Instead you load it dynamically at runtime and use  
function pointers.
3. Using bundles in plugins is broken in 4D Client 2004.5 and 2004.6.  
It works in previous versions and is supposed to be fixed again in  
2004.7.


- Rob Laveaux

--------------------------------------------------------
Pluggers Software
Bleriotlaan 62
2497 BM  Den Haag
The Netherlands

Email: rob.laveaux@...
Website: http://www.pluggers.nl

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


**********************************************************************
4D Plugins hosted by 4D, Inc.                      http://www.4D.com/     
   

4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************


Re: Mac PLugin Client-Server problem

by adam leff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

So the solution here is to compile ghostscript as a static library?

Adam Leff
Slicksurface Inc

On Dec 5, 2007 1:22 PM, Rob Laveaux < rob.laveaux@...> wrote:

On 5 dec 2007, at 18:54, adam leff wrote:

> I am linking to the Ghostscript framework.

Ah, that's definitely not a static library.

>  If it can't find the library, is there some way to replicate that
> alongside the plugin?

No. You'll have to install the framework in one of the "Frameworks"
folders of each computer that will be using the plugin.
Or you can embed it in the Frameworks folder of 4D Client.

There are several problems when using embedded frameworks in a plugin:
1. Frameworks use symbolic links. 4D Client/Server does not support
transfering symbolic links from  server to client. This is
understandable because the server might be on Windows. And Windows
does not know about Mac specific file attributes. What you can do
though is use a ".bundle" instead of a ".framework" but this leads you
to the next problems.
2. When the OS tries to load your plugin, it will still fail because
it will not look inside the embedded "Frameworks" folder of your
plugin. You can work around that by not linking to the bundle/
framework at all. Instead you load it dynamically at runtime and use
function pointers.
3. Using bundles in plugins is broken in 4D Client 2004.5 and 2004.6.
It works in previous versions and is supposed to be fixed again in
2004.7.


- Rob Laveaux

--------------------------------------------------------
Pluggers Software
Bleriotlaan 62
2497 BM  Den Haag
The Netherlands

Email: rob.laveaux@...
Website: http://www.pluggers.nl

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


**********************************************************************
4D Plugins hosted by 4D, Inc.                      http://www.4D.com/


4D v11 SQL - A 21st Century database for 21st Century developers
http://www.4D.com/products/new.html

To Unsubscribe:                      mailto:4D-Plugins-off@...
***********************************************************************


LightInTheBox - Buy quality products at wholesale price!