Page 1 of 1

WebGadget distro problem

Posted: Wed Jun 10, 2009 6:53 pm
by gedumer
I'm developing an app using WebGadget on Linux, but also for Win32 distribution. I'm having a problem with "ATL.DLL". The app works on my development machine... perhaps because I have Wine installed and it includes the "atl.dll.so" library. The problem occurs when I try to use the app on a different Linux machine. I get an error message indicating that the "atl.dll" file is missing. This is generated in my app when it tries to invoke the WebGadget which uses that dll by default. PB has a constant that's supposed to be available on Linux called: #PB_Web_Mozilla. This would permit the use of the Mozilla ActiveX, but I get a compile error indicating that the constant is not defined. Does anyone know its value? NOTE: After searching the internet, it appears that this ActiveX control is for Win32 only... so I guess this will not solve my problem.

I could use some suggestions regarding the installation of the ATL file if that's an option. As I said it works on my dev pc but not on the user pc. Do you think the "atl.dll.so" library installed with Wine is the reason it works on my machine? If so, where would I install it on the user machine so it would work there?

P.S. I'm very new to Linux as well as PB.

Posted: Wed Jun 10, 2009 8:50 pm
by Trond
atl.dll is not used at all for the linux version. #PB_Web_Mozilla is NOT usable on Linux. Mozilla is always used.

What has Wine got to do with it? Are you compiling for Linux or do just try to run a windows exe on Linux?

Posted: Wed Jun 10, 2009 9:36 pm
by gedumer
Trond wrote:What has Wine got to do with it? Are you compiling for Linux or do just try to run a windows exe on Linux?
I'm not using Wine at all. I'm compiling it for Linux. After reading the PB docs more carefully, I realize that I need libgtkembedmoz.so on the user pc for any app using WebGadget. I'm assuming it was installed when I installed Ubuntu v8.04? What do I have to do to get that file on the user pc and where do I put it?

Posted: Thu Jun 11, 2009 12:58 am
by gedumer
The current solution is to install libxul-dev.

It works when you do this, but this is not a very practical solution if you're releasing an app commercially or even opensource. It's not a particularly minor issue to expect a potential customer to install an external library.

Any comments or suggestions?

Posted: Thu Jun 11, 2009 8:34 am
by Trond
Any comments or suggestions?
On Linux, this is the way it's done (with installing external libraries). That's one of the reasons it sucks so much and hasn't taken off on the desktop.