Device Providers
|
26-01-2015, 09:59 AM
Post: #1
|
|||
|
|||
Device Providers
Hi,
I have not done much with ohNet recently but I have just tried to compile the latest version and noticed that some of the device providers seem to be missing for example there does not seem to be : org.openhome.net.device.providers.DvProviderAvOpenhomeOrgVolume1 org.openhome.net.device.providers.DvProviderAvOpenhomeOrgRadio1 org.openhome.net.device.providers.DvProviderUpnpOrgAVTransport1 org.openhome.net.device.providers.DvProviderAvOpenhomeOrgInfo1 org.openhome.net.device.providers.DvProviderAvOpenhomeOrgPlaylist1 org.openhome.net.device.providers.DvProviderAvOpenhomeOrgReceiver1 org.openhome.net.device.providers.DvProviderUpnpOrgRenderingControl1 org.openhome.net.device.providers.DvProviderAvOpenhomeOrgTime1 Have these classes been moved to another location, I tried searching for them but could not find them.. I compile as a Java Lib and use the ohnet.jar for a renderer appliation.. Thanks, Pete. |
|||
26-01-2015, 10:01 AM
Post: #2
|
|||
|
|||
RE: Device Providers
(26-01-2015 09:59 AM)PeteManchester Wrote: I have not done much with ohNet recently but I have just tried to compile the latest version and noticed that some of the device providers seem to be missing Hi Pete Generated code is now provided by a separate repo - ohNetGenerated. Anything previously included in ohNet should now be here. |
|||
26-01-2015, 12:12 PM
Post: #3
|
|||
|
|||
RE: Device Providers
Thanks Simon..
I think I'm missing something, I can compile the old ohNet code, but when I try to compile ohNetGenerated after running 'go fetch --all [--debug]' I get the following errors: Code: root@rpistudy:/home/pi/ohNetGenerated# make JavaAll Any ideas what I might be missing.. I tried installing make again, but it still didn't work.. Thanks, Pete. |
|||
26-01-2015, 01:25 PM
Post: #4
|
|||
|
|||
RE: Device Providers
(26-01-2015 12:12 PM)PeteManchester Wrote: Thanks Simon.. I can't reproduce these errors. Looking at the makefile, it seems you're trying to regenerate the (auto-generated) makefiles under Generated/. Rather than figuring out why this is happening, it might be easier to just allow it to work. Can you try adding -uset4=yes to your build command please? Also, can I check that you fetch dependencies using one of ./go fetch --all or ./go fetch --all --debug ? The [--debug] in README is intended to show that specifying debug is optional. |
|||
26-01-2015, 01:49 PM
Post: #5
|
|||
|
|||
RE: Device Providers
Hi Simon,
Thanks for the suggestion, I tried ./go fetch --all and ./go fetch --all --debug One thing I noticed is that it seems to download Linux-x86, is that correct, this is for a Raspberry Pi which is ARM rather than -x86 . Code: Fetching 'ohNet' I tried adding the uset4=yes switch to the make command but it still failed.. Code: make JavaAll uset4=yes Code: root@rpistudy:/home/pi# rm ohNetGenerated -r Thanks again, Pete. |
|||
26-01-2015, 01:58 PM
Post: #6
|
|||
|
|||
RE: Device Providers
(26-01-2015 01:49 PM)PeteManchester Wrote: Hi Simon, Each call to fetch dependencies will remove the previously fetch version of ohNet. If you most recently fetched debug dependencies, you'll need to do a debug build - by adding debug=1 to your command line. (26-01-2015 01:49 PM)PeteManchester Wrote: One thing I noticed is that it seems to download Linux-x86, is that correct, this is for a Raspberry Pi which is ARM rather than -x86 . Good point. This'd normally be a major issue but I don't think its the cause of your problems here... It looks like there's a bug in our dependency fetching script's platform detection. You can work around this by explicitly specifying which platform you'll later build for: ./go fetch --all --platform=Linux-ARM I suspect this'll introduce another bug for you however - I think ohnet.jar is only built for Linux-x86. You'll need a local workaround for this - possibly manually copying ohnet.jar over fetched Linux-ARM dependencies. (26-01-2015 01:49 PM)PeteManchester Wrote: I tried adding the uset4=yes switch to the make command but it still failed.. dmcs is provided by mono. I guess you don't have it installed. Is it possible for you to install mono or should we look for a workaround? |
|||
26-01-2015, 03:25 PM
Post: #7
|
|||
|
|||
RE: Device Providers
Hi Simon,
I installed mono but didn't seem to get much further.. Also it could not find a platform of 'Linux-ARM' or 'Linux-armhf' so I took a guess at 'Core-armv5' Code: root@rpistudy:/home/pi/ohNetGenerated# clear |
|||
27-01-2015, 01:15 PM
Post: #8
|
|||
|
|||
RE: Device Providers
(26-01-2015 03:25 PM)PeteManchester Wrote: I installed mono but didn't seem to get much further.. I think we might be better retracing our steps to post #3. Since you're building platform-independent Java code, we could get away with building using x86 binaries. (You'll then need to manually patch in a suitable ARM build of libohNet.so) I've found one error building Java from a clean checkout. This should be fixed now. All builds may still try to regenerate code; this'll require that mono is installed. I also spotted an error in your build command. The correct target for make is JavaAll now (i.e. replace ohNetJavaAll with JavaAll) This should allow you to build ohNetGenerated for Java. That said, I'd recommend you move away from this... In hindsight, a repo that publishes binaries for a subset of interesting services has been a bad idea. Many of our repos are trying to move away from this, either by generating code themselves or by copying the generated proxies/providers they need into their own repos and building them locally. If you're able to follow either of these approaches, it should avoid any similar problems in future. |
|||
27-01-2015, 03:22 PM
Post: #9
|
|||
|
|||
RE: Device Providers
Hi Simon,
Quote:I've found one error building Java from a clean checkout. This should be fixed now. All builds may still try to regenerate code; this'll require that mono is installed. I tried again with the new version but with no success. Installing mono is not a big problem Quote:I also spotted an error in your build command. The correct target for make is JavaAll now (i.e. replace ohNetJavaAll with JavaAll) I have been using 'make JavaAll' Quote:This should allow you to build ohNetGenerated for Java. That said, I'd recommend you move away from this... In hindsight, a repo that publishes binaries for a subset of interesting services has been a bad idea. Many of our repos are trying to move away from this, either by generating code themselves or by copying the generated proxies/providers they need into their own repos and building them locally. If you're able to follow either of these approaches, it should avoid any similar problems in future. I'm not sure I understand your last statement, I would prefer to just download precompiled libraries from the artifacts, but I have not yet found any that seem to work. I downloaded the archive ohNetGenerated-1.0.66-Linux-x86-Release.tar.gz,but in the ohnet-generated.jar file it is missing all the core libraries and: org.openhome.net.device.DvDevice org.openhome.net.device.IDvInvocation On my raspi I can still compile the ohNet code, but I cannot yet compile the ohNetGenerated code. The advantage of compiling on my raspi is that I get libraries that work, the disadvantage is it takes so long.. Thanks, Pete. |
|||
27-01-2015, 04:11 PM
Post: #10
|
|||
|
|||
RE: Device Providers
(27-01-2015 03:22 PM)PeteManchester Wrote: I downloaded the archive ohNetGenerated-1.0.66-Linux-x86-Release.tar.gz,but in the ohnet-generated.jar file it is missing all the core libraries and: Core libraries would still come from ohNet. ohNetGenerated builds on top of this, adding providers for OpenHome services. Is it possible for you to fetch binaries for both ohNet and ohNetGenerated? |
|||
« Next Oldest | Next Newest »
|