Bug 238022 - Linux can't connect to skype
Summary: Linux can't connect to skype
Status: RESOLVED FIXED
Alias: None
Product: ECF
Classification: RT
Component: ecf.telephony (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 2.0.1   Edit
Assignee: Ted Kubaska CLA
QA Contact:
URL:
Whiteboard:
Keywords: helpwanted
Depends on:
Blocks:
 
Reported: 2008-06-21 08:56 EDT by Irakli Gozalishvili CLA
Modified: 2008-08-21 21:27 EDT (History)
5 users (show)

See Also:


Attachments
Skype fragments for x86 linux 32 and 64-bit (46.38 KB, application/force-download)
2008-06-21 13:13 EDT, Scott Lewis CLA
no flags Details
Here is my error log there is something about ecf (17.17 KB, application/octet-stream)
2008-06-21 13:38 EDT, Irakli Gozalishvili CLA
no flags Details
plugins (126.97 KB, image/png)
2008-06-21 15:40 EDT, Irakli Gozalishvili CLA
no flags Details
Eclipse configuration details (385.50 KB, text/plain)
2008-06-28 19:20 EDT, Irakli Gozalishvili CLA
no flags Details
crash log (155.98 KB, text/x-log)
2008-06-29 15:04 EDT, Irakli Gozalishvili CLA
no flags Details
how to build a Skype feature on Linux (1.01 MB, application/pdf)
2008-07-23 20:08 EDT, Ted Kubaska CLA
no flags Details
Describes how the Skype for LInux Feature was built (138.03 KB, application/pdf)
2008-08-21 21:24 EDT, Ted Kubaska CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Irakli Gozalishvili CLA 2008-06-21 08:56:54 EDT
Build ID: M20080221-1800

Steps To Reproduce:
1. click connect to provider
2. choose skype

nothing happens


More information:

Im not sure which component is it sorry
Comment 1 Scott Lewis CLA 2008-06-21 11:55:13 EDT
I see that the OS for this bug is listed as Linux.  We are *not* currently distributing the linux fragment in the zip or update site on ecf1.osuosl.org, so this explains why it's not working...as I assume you installed the zip (or from the update site).

The Linux fragments (32 and 64-bit) are available here

CVS

:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/skype  eclipse/plugins/com.skype.linux.x86
and
plugins/com.skype.linux.x86_64

If you prefer, I can build these and make them available manually (e.g. via attachment to this bug).  Please let me know.   Eventually, we would like to distribute linux 32, 64 features and zips but have not been able to get to it.


Comment 2 Irakli Gozalishvili CLA 2008-06-21 12:37:14 EDT
(In reply to comment #1)
> I see that the OS for this bug is listed as Linux.  We are *not* currently
> distributing the linux fragment in the zip or update site on ecf1.osuosl.org,
> so this explains why it's not working...as I assume you installed the zip (or
> from the update site).
> 
> The Linux fragments (32 and 64-bit) are available here
> 
> CVS
> 
> :pserver:anonymous@cvs.sourceforge.jp:/cvsroot/skype 
> eclipse/plugins/com.skype.linux.x86
> and
> plugins/com.skype.linux.x86_64
> 
> If you prefer, I can build these and make them available manually (e.g. via
> attachment to this bug).  Please let me know.   Eventually, we would like to
> distribute linux 32, 64 features and zips but have not been able to get to it.
> 

Yes It's true I installed them from update site.
I really prefer if you can build them and attach here.

Also can you please write how to install them??

Thanks.  
Comment 3 Scott Lewis CLA 2008-06-21 13:10:50 EDT
Assigning to Marcelo and adding Remy...for linux testing/expertise.  

I will add an attachment (as zip) with two fragments in it:

com.skype.linux.x86_0.2.v20080621-0956.jar
com.skype.linux.x86_64_0.1.0.v20080621-0956.jar

These are the linux (x86) fragments for 32-bit and 64-bit linux (respectively).

To install these, once the skype install has been done, I *believe* the only thing to do is to put/unzip these files to the <eclipsehome>/plugins directory.  I do not have access to a linux install (with Skype installed, etc) at the moment so cannot do this myself to verify the instructions...and p2 has changed things somewhat WRT installation (for 3.4).  That's why I added marcelo and remy to this bug.

So to summarize (I believe...Marcelo and/or Remy to verify)

0) Install Skype (recent version) on Linux
1) Install Eclipse (3.3 or 3.4)
2) Install ECF 2.0.0 latest (M5)
3) Install Skype feature from update site or zip on ecf1.osuosl.org
4) Add the attached fragments (inside zip) to <eclipsehome>/plugins
5) Close/Restart Eclipse

Marcelo and/or Remy...if either of you can verify this works on some flavor of linux, it would be great if you would then put this info on an ECF wiki page.





Comment 4 Scott Lewis CLA 2008-06-21 13:13:22 EDT
Created attachment 105582 [details]
Skype fragments for x86 linux 32 and 64-bit
Comment 5 Irakli Gozalishvili CLA 2008-06-21 13:34:37 EDT
I tried that out but can't see any effect.

Is there any way to check if the jar files been accepted or ignored by eclipse?
Comment 6 Irakli Gozalishvili CLA 2008-06-21 13:38:31 EDT
Created attachment 105583 [details]
Here is my error log there is something about ecf

Here is my eclipse error log there is something about ecf
Comment 7 Scott Lewis CLA 2008-06-21 14:15:23 EDT
(In reply to comment #6)
> Created an attachment (id=105583) [details]
> Here is my error log there is something about ecf
> 
> Here is my eclipse error log there is something about ecf
> 

The error in this log seems to be an issue with the slp discovery provider, which I believed was addressed in recent build of ECF.  I'll add Markus Kuppe to this bug so he can diagnose that.  But are you using the most recent version of ECF itself? (i.e. not just the skype provider).

So back to the original issue.  Marcelo or Remy will need to help out here as I don't have access to a linux machine with Skype running on it to test.

Marcelo please advise when you can...or if you don't have access to linux 32 or 64 now.

RE: jar file accepted or ignored by Eclipse...you should be able to see the fragment listed in Help->About Eclipse SDK->Plugin Details.







Comment 8 Irakli Gozalishvili CLA 2008-06-21 15:40:03 EDT
Created attachment 105585 [details]
plugins

I think I am using the latest builds you can see versions in the screenshot

I installed them via update sites:

http://download.eclipse.org/technology/ecf/2.0/updateSite
http://ecf1.osuosl.org/update/2.0/
Comment 9 Markus Kuppe CLA 2008-06-23 03:44:09 EDT
(In reply to comment #8)
> Created an attachment (id=105585) [details]
> plugins

Please copy&paste the output of help > about eclipse sdk > configuration details
Comment 10 Irakli Gozalishvili CLA 2008-06-28 19:20:27 EDT
Created attachment 106067 [details]
Eclipse configuration details 

Sorry for late late response. Configuration is attached because it was too long to paste it here.
Comment 11 Scott Lewis CLA 2008-06-28 20:07:27 EDT
(In reply to comment #10)
> Created an attachment (id=106067) [details]
> Eclipse configuration details 
> 
> Sorry for late late response. Configuration is attached because it was too long
> to paste it here.
> 

What version of skype are you using?

Comment 12 Irakli Gozalishvili CLA 2008-06-29 11:02:33 EDT
2.0.0.68
Comment 13 Scott Lewis CLA 2008-06-29 12:29:28 EDT
(In reply to comment #12)
> 2.0.0.68
> 

This seems rather old...and I do recall something about Skype4Java (which we are using) not working properly with older versions.  Would you be able to try a more recent version?  I'm currently using version 3.6.0.216.
Comment 14 Irakli Gozalishvili CLA 2008-06-29 12:34:03 EDT
2.0.0.68(In reply to comment #13)
> (In reply to comment #12)
> > 2.0.0.68
> > 
> 
> This seems rather old...and I do recall something about Skype4Java (which we
> are using) not working properly with older versions.  Would you be able to try
> a more recent version?  I'm currently using version 3.6.0.216.
> 

2.0.0.68 is the latest version for linux (Is not it ??)
Comment 15 Scott Lewis CLA 2008-06-29 13:14:24 EDT
(In reply to comment #14)
> 2.0.0.68(In reply to comment #13)
> > (In reply to comment #12)
> > > 2.0.0.68
> > > 
> > 
> > This seems rather old...and I do recall something about Skype4Java (which we
> > are using) not working properly with older versions.  Would you be able to try
> > a more recent version?  I'm currently using version 3.6.0.216.
> > 
> 
> 2.0.0.68 is the latest version for linux (Is not it ??)
> 

I don't know...I was under the impression that they used the same versioning scheme, but perhaps not.  Marcelo could you please comment on what version you have been/are using with linux?

Thanks.
Comment 16 Irakli Gozalishvili CLA 2008-06-29 15:04:26 EDT
Created attachment 106082 [details]
crash log

I just noticed that my eclipse crashes on every try to access skype provider.
I don't know since where is it so but not since I pasted jar's to the plugins dir (I've tested that). anyway there is log of crash in the attachment. 

P.S: I have not installed any new plugins and have not changed any confs of eclipse.
Comment 17 Mike Greenawalt CLA 2008-07-02 23:45:40 EDT
(In reply to comment #13)
> (In reply to comment #12)
> > 2.0.0.68
> > 
> 
> This seems rather old...and I do recall something about Skype4Java (which we
> are using) not working properly with older versions.  Would you be able to try
> a more recent version?  I'm currently using version 3.6.0.216.
> 

The current version of Skype for Linux today is 2.0.0.72. Skype for Windows is at 3.8.0.139. Skype for Mac OS is at 2.7.something. The versions of Skype for the different platforms have always been different. The version of the Skype API supported by the various platforms have tended to be the same, however.
Comment 18 Irakli Gozalishvili CLA 2008-07-03 16:31:45 EDT
I did not knew about new realize of Skype.
I installed on both of my computers Work and Leptop.
Leptop runs Ubuntu 7.10 and eclipse europa seems that skype upade fixed the problem now it works fine

But the issue still exists on my work pc.
It runs Ubuntu 8.04 and and eclipse Ganymede

I'm pasting the output in console on the click Connect to provider > Skype

org.eclipse.ecf.core.ContainerCreateException: Could not create skype container
	at org.eclipse.ecf.provider.skype.SkypeContainerInstantiator.createInstance(SkypeContainerInstantiator.java:40)
	at org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:259)
	at org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:233)
	at org.eclipse.ecf.internal.ui.actions.SelectProviderAction.openConnectWizard(SelectProviderAction.java:141)
	at org.eclipse.ecf.internal.ui.actions.SelectProviderAction.access$0(SelectProviderAction.java:137)
	at org.eclipse.ecf.internal.ui.actions.SelectProviderAction$1.widgetSelected(SelectProviderAction.java:100)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:227)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1154)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3398)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3030)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:112)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
Caused by: java.lang.IllegalStateException: The connector couldn't be initialized.
	at com.skype.connector.Connector.getInstance(Connector.java:109)
	at com.skype.Utils.getProperty(Utils.java:153)
	at com.skype.Profile.getId(Profile.java:225)
	at org.eclipse.ecf.provider.skype.SkypeContainerInstantiator.createInstance(SkypeContainerInstantiator.java:38)
	... 30 more
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at com.skype.connector.Connector.getInstance(Connector.java:107)
	... 33 more
Caused by: java.lang.UnsatisfiedLinkError: Can't load library: /tmp/libJSA.so
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1650)
	at java.lang.Runtime.load0(Runtime.java:769)
	at java.lang.System.load(System.java:968)
	at com.skype.connector.linux.LinuxConnector.<init>(LinuxConnector.java:50)
	at com.skype.connector.linux.LinuxConnector.getInstance(LinuxConnector.java:66)
	... 38 more
Comment 19 Ted Kubaska CLA 2008-07-11 00:39:00 EDT
(In reply to comment #18)
> I did not knew about new realize of Skype.
> I installed on both of my computers Work and Leptop.
> Leptop runs Ubuntu 7.10 and eclipse europa seems that skype upade fixed the
> problem now it works fine
> 
> But the issue still exists on my work pc.
> It runs Ubuntu 8.04 and and eclipse Ganymede
> 
> I'm pasting the output in console on the click Connect to provider > Skype
> 
> org.eclipse.ecf.core.ContainerCreateException: Could not create skype container
>         at
> org.eclipse.ecf.provider.skype.SkypeContainerInstantiator.createInstance(SkypeContainerInstantiator.java:40)
>         at
> org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:259)
>         at
> org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:233)
>         at
> org.eclipse.ecf.internal.ui.actions.SelectProviderAction.openConnectWizard(SelectProviderAction.java:141)
>         at
> org.eclipse.ecf.internal.ui.actions.SelectProviderAction.access$0(SelectProviderAction.java:137)
>         at
> org.eclipse.ecf.internal.ui.actions.SelectProviderAction$1.widgetSelected(SelectProviderAction.java:100)
>         at
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:227)
>         at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
>         at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1154)
>         at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3398)
>         at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3030)
>         at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
>         at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
>         at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
>         at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
>         at
> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
>         at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488)
>         at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
>         at
> org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:112)
>         at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
>         at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
>         at
> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
>         at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
>         at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
>         at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
>         at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
> Caused by: java.lang.IllegalStateException: The connector couldn't be
> initialized.
>         at com.skype.connector.Connector.getInstance(Connector.java:109)
>         at com.skype.Utils.getProperty(Utils.java:153)
>         at com.skype.Profile.getId(Profile.java:225)
>         at
> org.eclipse.ecf.provider.skype.SkypeContainerInstantiator.createInstance(SkypeContainerInstantiator.java:38)
>         ... 30 more
> Caused by: java.lang.reflect.InvocationTargetException
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at com.skype.connector.Connector.getInstance(Connector.java:107)
>         ... 33 more
> Caused by: java.lang.UnsatisfiedLinkError: Can't load library: /tmp/libJSA.so
>         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1650)
>         at java.lang.Runtime.load0(Runtime.java:769)
>         at java.lang.System.load(System.java:968)
>         at
> com.skype.connector.linux.LinuxConnector.<init>(LinuxConnector.java:50)
>         at
> com.skype.connector.linux.LinuxConnector.getInstance(LinuxConnector.java:66)
>         ... 38 more
> 
I have Ubuntu 7.10 (Gutsy Gibbon) with all its updates and Eclipse 3.4 Ganymede
and Skype does not work. It works standalone not with ECF. Skype is 2.0.0.72.

Are you saying that Ubuntu 7.10 and Europa and 2.0.0.72 Skype works? And it
breaks if we replace Europa with Ganymede? 

This Skype problem appears every now and then and the fix is never the same.

Comment 20 Irakli Gozalishvili CLA 2008-07-11 04:34:00 EDT
Yes that's right. >> breaks if we replace Europa with Ganymede

Well actually I found the problem I guess when I'm installed ECF Extras it installs the win32 of skype but well you have a problem then with eclipse configuration while running linux cause this skype.win32... requests something else. 

The second thing is that when you just put the linux skype plugins into the eclipse plugins directory I think eclipse Ganymede just don't take's it.

Well solution was that I made my own package of ECF Extras, changed the features.xml replaced skype win plugin with skype linux plugin, and actuallly removed win32 plugin jar and added linux ones and installed that way.

I guess now eclipse new about the Skype linux plugin but when I was trying to connect to skype eclipse was crashing (think it's beacuase the ecf still was trying to load somehing from win32 skype). well after I put into the plugins the win32 skype plugin and after everything started working. Besides I don't have any problems with the an eclipse configuration now cause no feature requests win32 skype plugin anymore.

Unfortunately this was working for a week but after once eclipse crashed again when I tryed to connect the skype provider, since then click on the connect skype provider is just ignored.

Well I give up with this problem, but hopefully this info was helpfull.
Comment 21 Marcelo Mayworm CLA 2008-07-11 08:47:33 EDT
(In reply to comment #20)
> Yes that's right. >> breaks if we replace Europa with Ganymede
> 
> Well actually I found the problem I guess when I'm installed ECF Extras it
> installs the win32 of skype but well you have a problem then with eclipse
> configuration while running linux cause this skype.win32... requests something
> else. 
> 
> The second thing is that when you just put the linux skype plugins into the
> eclipse plugins directory I think eclipse Ganymede just don't take's it.
> 
> Well solution was that I made my own package of ECF Extras, changed the
> features.xml replaced skype win plugin with skype linux plugin, and actuallly
> removed win32 plugin jar and added linux ones and installed that way.
> 
> I guess now eclipse new about the Skype linux plugin but when I was trying to
> connect to skype eclipse was crashing (think it's beacuase the ecf still was
> trying to load somehing from win32 skype). well after I put into the plugins
> the win32 skype plugin and after everything started working. Besides I don't
> have any problems with the an eclipse configuration now cause no feature
> requests win32 skype plugin anymore.
> 
> Unfortunately this was working for a week but after once eclipse crashed again
> when I tryed to connect the skype provider, since then click on the connect
> skype provider is just ignored.
> 
> Well I give up with this problem, but hopefully this info was helpfull.
> 


Hi Irakli, thanks for your posts. I will take a look and make some tests on this bug on the next days. 
Comment 22 Scott Lewis CLA 2008-07-11 11:06:04 EDT
(In reply to comment #20)
> Yes that's right. >> breaks if we replace Europa with Ganymede
> 
> Well actually I found the problem I guess when I'm installed ECF Extras it
> installs the win32 of skype but well you have a problem then with eclipse
> configuration while running linux cause this skype.win32... requests something
> else. 
> 
> The second thing is that when you just put the linux skype plugins into the
> eclipse plugins directory I think eclipse Ganymede just don't take's it.
> 
> Well solution was that I made my own package of ECF Extras, changed the
> features.xml replaced skype win plugin with skype linux plugin, and actuallly
> removed win32 plugin jar and added linux ones and installed that way.
> 
> I guess now eclipse new about the Skype linux plugin but when I was trying to
> connect to skype eclipse was crashing (think it's beacuase the ecf still was
> trying to load somehing from win32 skype). well after I put into the plugins
> the win32 skype plugin and after everything started working. Besides I don't
> have any problems with the an eclipse configuration now cause no feature
> requests win32 skype plugin anymore.
> 
> Unfortunately this was working for a week but after once eclipse crashed again
> when I tryed to connect the skype provider, since then click on the connect
> skype provider is just ignored.


So to summarize...you did get it working on linux (32 not 64 bit, right?) when you removed the win32 fragment and added the linux 32 fragment, and it was working for a week.  But then you had an Eclipse crash and now the skype provider doesn't connect.  Is that correct?

Just so everyone is aware...back in March I removed the linux fragment from the skype provider to avoid problems with having unused/inappropriate fragments when p2 was introduced.  

That means that essentially what is needed is a new skype feature (and associated build) that essentially creates the skype plugins and the linux fragments and puts them together into a distinct new feature.  The current skype feature is win32 only.  I didn't have time before the Ganymede release to create this new skype-for-linux feature and incorporate it into the Ganymede build.

I would suggest that both Ted and Marcelo create such a new feature, use the IDE to build/test it/resolve any other issues, and then if it works add it to the osuosl build.




Comment 23 Irakli Gozalishvili CLA 2008-07-11 11:33:36 EDT
Not Exactly that way I will write the steps again

1) on the 30 bit linux I have installed ECF
2) Create new feature & plugin based on the one from ECF Extras and installed it (replaced win32 plugin with linux 32 and deleted win32 plugin)
3) after this stesp eclipse was crashing when it was trying to connect skype so I copy-ed win32 plugin to the plugins folder, but it was not in the features anymore

After this steps everything was working fine till the eclipse crash. The point is that if you have win32 plugin in the fetaure then you can't install any other plugin because p2 can never get all the requested plugins (guess win32 requests some win plugins which does not exists in linux), but if you will just delete win32 plugin eclipse starts crashing even if you don't have it in features, guess it's because the ecf is still useing something from win32 plugin. 

think only skype-for-linux feature won't be enough you also have to check why eclipse is crashing withought win32 plugin 
Comment 24 Scott Lewis CLA 2008-07-11 13:08:14 EDT
(In reply to comment #23)
> Not Exactly that way I will write the steps again
> 
> 1) on the 30 bit linux I have installed ECF
> 2) Create new feature & plugin based on the one from ECF Extras and installed
> it (replaced win32 plugin with linux 32 and deleted win32 plugin)
> 3) after this stesp eclipse was crashing when it was trying to connect skype so
> I copy-ed win32 plugin to the plugins folder, but it was not in the features
> anymore
> 
> After this steps everything was working fine till the eclipse crash. 

OK, good thanks.


>The point
> is that if you have win32 plugin in the fetaure then you can't install any
> other plugin because p2 can never get all the requested plugins (guess win32
> requests some win plugins which does not exists in linux), but if you will just
> delete win32 plugin eclipse starts crashing even if you don't have it in
> features, guess it's because the ecf is still useing something from win32
> plugin. 


Although it's possible, this is probably not the reason eclipse crashed for you.  The com.skype plugin is not using anything specific to the win32 fragment.  My guess is that Eclipse/p2 itself has become confused by your making changes to the fragments (i.e. adding the linux fragment and removing the win32 fragment).  I did not realize this would be a problem with fragments, but apparently it is.

In other words, you should *not* do step 2 above.  For linux 32 and 64 a *whole new feature* should be used to install the skype plugins (com.skype, org.eclipse.ecf.provider.skype, org.eclipse.ecf.provider.skype.ui and linux 32 fragment).  That way, the win32 fragment will not be installed at all, and the linux 32 fragment will be installed.  In other words, that's what I believe we (Marcelo, Ted and myself) should do...create a new skype-linux32 feature, with the appropriate skype plugins and fragments, test it, and then make it available for install.  And we also need to modify the docs to prevent people from installing the existing (win32) skype feature on Linux (i.e. prevent them from doing step 2).

> 
> think only skype-for-linux feature won't be enough you also have to check why
> eclipse is crashing withought win32 plugin 
> 

I would suggest that you create a new, fresh install of Eclipse, install ECF (step 1), but then do *not* do step 2.  We will work on the new skype-linux feature as discussed above, and then we can post it here on this bug for your testing once we have it.  I really would like to have it already, but we simply can't do all we would like to given current levels of support (none).  Sorry for that.

BTW...I will make the changes to the web page at http://ecf1.osuosl.org to indicate that the existing skype provider is for win32 only...and point to this bug for skype/linux access.




Comment 25 Ted Kubaska CLA 2008-07-14 21:18:50 EDT
(In reply to comment #24)
Well, from HEAD I got the Skype plugin code and built it on Linux and then made a local feature as Scott suggested. I then installed the local feature and now Skype works inside my Linux Eclipse 3.4.

Now from the comments above, the big question is how long will this last? Or will eclipse eventually crash resulting in the inability to install SKype again.

The Skype plugin consists of com.skype, com.skype.linux.x86, org.eclipse.ecf.provider.skype, and org.eclipse.ecf.provider.skype.ui

I'll do some tests,then provide more details; but the key is as Scott said to have a feature that's just Linux for eclipse/ECF/Skype on Linux and a feature that's just Windows for eclipse/ECF/Skype on Windows. Who else has had success?
 -ted

Comment 26 Ted Kubaska CLA 2008-07-17 16:04:11 EDT
There's a test update site for the Linux Skype Provider at 
http://ecf1.osuosl.org/update/2.0Linux/site.xml

This is not official, but if people would like to try it out, that would be great.

(In reply to comment #25)
> (In reply to comment #24)
> Well, from HEAD I got the Skype plugin code and built it on Linux and then made
> a local feature as Scott suggested. I then installed the local feature and now
> Skype works inside my Linux Eclipse 3.4.
> 
> Now from the comments above, the big question is how long will this last? Or
> will eclipse eventually crash resulting in the inability to install SKype
> again.
> 
> The Skype plugin consists of com.skype, com.skype.linux.x86,
> org.eclipse.ecf.provider.skype, and org.eclipse.ecf.provider.skype.ui
> 
> I'll do some tests,then provide more details; but the key is as Scott said to
> have a feature that's just Linux for eclipse/ECF/Skype on Linux and a feature
> that's just Windows for eclipse/ECF/Skype on Windows. Who else has had success?
>  -ted
> 

Comment 27 George Lindholm CLA 2008-07-23 17:44:50 EDT
Just tried the Linux Skype from the update site. Instant crash
Suse 11.0, Skype 2.0.0.72, eclipse 3.4


Registers:
EAX=0x00000001, EBX=0x5053bff4, ECX=0x4fa70e18, EDX=0x00000001
ESP=0xb7e48040, EBP=0xb6e48080, ESI=0xb7e480d0, EDI=0x42a60e18
EIP=0x00000075, CR2=0x00000075, EFLAGS=0x00010282

Top of Stack: (sp=0xb7e48040)
0xb7e48040:   4fa70e18 b7e480a4 b7e480a8 00000000
0xb7e48050:   4eef72a8 4fa70e18 00000000 00000000
0xb7e48060:   00000000 00000000 b7e480a4 00000000
0xb7e48070:   5053c18e 00000000 4f6ea77a 00000000
0xb7e48080:   5053c18e 00000000 4faa9648 00000000
0xb7e48090:   5053c18c 00000000 006c80b8 0000000b
0xb7e480a0:   00100012 00000000 00000000 5053bff4
0xb7e480b0:   b7e480d0 00000608 b7e480f8 5052f04f

Instructions: (pc=0x00000075)
0x00000065:
[error occurred during error reporting, step 100, id 0xb]

Stack: [0xb7df9000,0xb7e4a000),  sp=0xb7e48040,  free space=316k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  0x00000075

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  com.skype.connector.linux.LinuxConnector.init(Ljava/lang/String;)V+0
j  com.skype.connector.linux.LinuxConnector.init()V+5
j  com.skype.connector.linux.LinuxConnector.initialize()V+1
j  com.skype.connector.Connector.connect()Lcom/skype/connector/Connector$Status;+20
j  com.skype.connector.Connector.assureAttached()V+13
j  com.skype.connector.Connector.execute(Ljava/lang/String;[Ljava/lang/String;ZZ)Ljava/lang/String;+19
j  com.skype.connector.Connector.execute(Ljava/lang/String;[Ljava/lang/String;Z)Ljava/lang/String;+5
j  com.skype.connector.Connector.execute(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;+31
j  com.skype.Utils.getProperty(Ljava/lang/String;)Ljava/lang/String;+47
j  com.skype.Profile.getId()Ljava/lang/String;+2
Comment 28 Ted Kubaska CLA 2008-07-23 20:08:22 EDT
Created attachment 108290 [details]
how to build a Skype feature on Linux
Comment 29 Ted Kubaska CLA 2008-07-23 20:13:24 EDT
(In reply to comment #27)
Thanks for trying this out. I can assure you it works with Ubuntu Gutsy, but unfortunately that doesn't help you. I have the same version of Skype that you do, but I dont have access to Suse 11.0. 

I added a pdf that shows how I built that test Skype linux feature. Can someone try this build out on some other distro besides Ubuntu? 

Will it still crash if you try to install on a brand new installed Eclipse with ECF only? Could the existence of that win32 fragment be an issue?

Thanks for help on this.
 -ted



> Just tried the Linux Skype from the update site. Instant crash
> Suse 11.0, Skype 2.0.0.72, eclipse 3.4
> 
> 
> Registers:
> EAX=0x00000001, EBX=0x5053bff4, ECX=0x4fa70e18, EDX=0x00000001
> ESP=0xb7e48040, EBP=0xb6e48080, ESI=0xb7e480d0, EDI=0x42a60e18
> EIP=0x00000075, CR2=0x00000075, EFLAGS=0x00010282
> 
> Top of Stack: (sp=0xb7e48040)
> 0xb7e48040:   4fa70e18 b7e480a4 b7e480a8 00000000
> 0xb7e48050:   4eef72a8 4fa70e18 00000000 00000000
> 0xb7e48060:   00000000 00000000 b7e480a4 00000000
> 0xb7e48070:   5053c18e 00000000 4f6ea77a 00000000
> 0xb7e48080:   5053c18e 00000000 4faa9648 00000000
> 0xb7e48090:   5053c18c 00000000 006c80b8 0000000b
> 0xb7e480a0:   00100012 00000000 00000000 5053bff4
> 0xb7e480b0:   b7e480d0 00000608 b7e480f8 5052f04f
> 
> Instructions: (pc=0x00000075)
> 0x00000065:
> [error occurred during error reporting, step 100, id 0xb]
> 
> Stack: [0xb7df9000,0xb7e4a000),  sp=0xb7e48040,  free space=316k
> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
> C  0x00000075
> 
> Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
> j  com.skype.connector.linux.LinuxConnector.init(Ljava/lang/String;)V+0
> j  com.skype.connector.linux.LinuxConnector.init()V+5
> j  com.skype.connector.linux.LinuxConnector.initialize()V+1
> j 
> com.skype.connector.Connector.connect()Lcom/skype/connector/Connector$Status;+20
> j  com.skype.connector.Connector.assureAttached()V+13
> j 
> com.skype.connector.Connector.execute(Ljava/lang/String;[Ljava/lang/String;ZZ)Ljava/lang/String;+19
> j 
> com.skype.connector.Connector.execute(Ljava/lang/String;[Ljava/lang/String;Z)Ljava/lang/String;+5
> j 
> com.skype.connector.Connector.execute(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;+31
> j  com.skype.Utils.getProperty(Ljava/lang/String;)Ljava/lang/String;+47
> j  com.skype.Profile.getId()Ljava/lang/String;+2
> 

Comment 30 George Lindholm CLA 2008-07-24 16:30:47 EDT
I see this compilation error:

1. ERROR in /local/src/workspace/org.eclipse.ecf.provider.skype/src/org/eclipse/ecf/provider/skype/DTMFHelper.java (at line 15)
        import org.eclipse.ecf.telephony.call.dtmf.IDTMFCallSessionAdapter;
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The import org.eclipse.ecf.telephony.call.dtmf cannot be resolved
----------
Comment 31 George Lindholm CLA 2008-07-24 17:24:30 EDT
(In reply to comment #29)
> (In reply to comment #27)
> Thanks for trying this out. I can assure you it works with Ubuntu Gutsy, but
> unfortunately that doesn't help you. I have the same version of Skype that you
> do, but I dont have access to Suse 11.0.
> 
> I added a pdf that shows how I built that test Skype linux feature. Can someone
> try this build out on some other distro besides Ubuntu?
> 
> Will it still crash if you try to install on a brand new installed Eclipse with
> ECF only? Could the existence of that win32 fragment be an issue?

A virgin Eclipse works better. I do see Skype4Java in in the Public API as an allowed programm.

lindholm@scandia$ org.eclipse.ecf.core.ContainerCreateException: Could not create skype container
        at org.eclipse.ecf.provider.skype.SkypeContainerInstantiator.createInstance(SkypeContainerInstantiator.java:41)
        at org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:259)                            
        at org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:233)                            
        at org.eclipse.ecf.internal.ui.actions.SelectProviderAction.openConnectWizard(SelectProviderAction.java:141)   
        at org.eclipse.ecf.internal.ui.actions.SelectProviderAction.access$0(SelectProviderAction.java:137)            
        at org.eclipse.ecf.internal.ui.actions.SelectProviderAction$1.widgetSelected(SelectProviderAction.java:100)    
        at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:228)                                   
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)                                            
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1158)                                                  
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3401)                                        
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3033)                                          
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
        at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
        at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
        at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1938)
        at com.skype.CommandFailedException.<init>(CommandFailedException.java:56)
        at com.skype.Utils.checkError(Utils.java:77)
        at com.skype.Utils.getProperty(Utils.java:154)
        at com.skype.Profile.getId(Profile.java:225)
        at org.eclipse.ecf.provider.skype.SkypeContainerInstantiator.createInstance(SkypeContainerInstantiator.java:39)
        ... 30 more
Comment 32 Ted Kubaska CLA 2008-07-25 02:02:16 EDT
Thanks again for trying this out. I think I can resurrect a Suse 10.2 virtual machine in the next few days to work on. 

Do you see this error when you do a "Build All" to make the update site? Or building the plugin?

When you build the Skype Linux plugin, you must have installed ECF first.
When you make the update site, I found that I had to also check out the following (to not get a compile error)
... from :pserver:anonymous@dev.eclipse.org:/cvsroot/technology 
org.eclipse.ecf.core.sharedobject,
org.eclipse.ecf.datashare
org.eclipse.ecf.presence
org.eclipse.ecf.presence.ui
org.eclipse.ecf.provider
org.eclipse.ecf.provider.datashare
org.eclipse.ecf.provider.remoteservice
org.eclipse.ecf.telephony.call
org.eclipse.ecf.telephony.call.ui
(these are buried in a screenshot in the attached pdf and not explicitly mentioned in the text).

as well as have checked out the Skype files themselves
... from :pserver:anonymous@cvs.sourceforge.jp:/cvsroot/skype
com.skype
com.skype.linux.x86
... from :pserver:anonymous@ecf1.osuosl.org/ecf
org.eclipse.provider.skype
org.eclipse.provider.skype.ui


(In reply to comment #30)
> I see this compilation error:
> 
> 1. ERROR in
> /local/src/workspace/org.eclipse.ecf.provider.skype/src/org/eclipse/ecf/provider/skype/DTMFHelper.java
> (at line 15)
>         import org.eclipse.ecf.telephony.call.dtmf.IDTMFCallSessionAdapter;
>                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> The import org.eclipse.ecf.telephony.call.dtmf cannot be resolved
> ----------
> 

Comment 33 Scott Lewis CLA 2008-08-14 14:52:17 EDT
Reassigning to Ted, as he has this fixed and simply needs to integrate into build.
Comment 34 Ted Kubaska CLA 2008-08-21 21:24:27 EDT
Created attachment 110634 [details]
Describes how the Skype for LInux Feature was built
Comment 35 Ted Kubaska CLA 2008-08-21 21:27:42 EDT
(In reply to comment #33)
> Reassigning to Ted, as he has this fixed and simply needs to integrate into
> build.
> 

Well, I did make a new feature (Skype (linux)) and add it to the build. I installed Skype for Linux from this new update site and it worked fine for me. I've been using the Skype plugin all during today without issue. So I am marking the bug as fixed.

It is important that users do not install both Skype for Windows and Skype for Linux because then neither works. Best to have a clean Eclipse, install ECF, and then install Skype. My distro is Ubuntu Gutsy.