Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
ohNet Installtion
04-02-2013, 04:26 PM
Post: #1
ohNet Installtion
Trying to install ohNet, I have cloned it from git and run the make command (built it).

When I try to do 'sudo make install' I get the following 'make: *** No rule to make target `tt', needed by `install-pkgconf'. Stop.'

I've looked through the readme and install files for ohNet and ohOS, I don't see any dependencies called tt.

The only reference to tt I have found is in the makefile alongside install-pkgconf.

If this is a noob question I apologise (but while a pc geek, I am new to the way of Linux), but I'm struggling to see what or where tt is (not seen a single shred of this on google).

Thanks in advance!
Find all posts by this user
04-02-2013, 04:40 PM
Post: #2
RE: ohNet Installtion
Some ohNet code is auto-generated. The code generation makes use of T4 (see http://en.wikipedia.org/wiki/Text_Templa..._Toolkit). T4 is a .NET tool so requires the presence on mono on Linux. If you have mono installed, you could try

make install uset4=yes
Find all posts by this user
04-02-2013, 04:48 PM (This post was last modified: 04-02-2013 05:01 PM by steve.)
Post: #3
RE: ohNet Installtion
Thanks for your quick reply Simon.
I do have mono installed, I may have went over and beyond but I installed the mono-complete package.

When executing your command above I get the following:

pi@raspberrypi ~/openhome/ohNet $ sudo make install uset4=yes
Machine reported by compiler is: arm-linux-gnueabihf
Machine reported by uname is: Linux
Building for system Linux and architecture armhf
ERROR: no support for (un)install-pckconf yet
#@echo "see http://www.mono-project.com/Guidelines:A...Deployment for an example of how to implement this"
mkdir -p /usr/local/lib/ohNet
rsync -u Build/Obj/Posix/Release/* /usr/local/lib/ohNet
rsync: change_dir "/home/pi/openhome/ohNet//Build/Obj/Posix/Release" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9]
make: *** [install-libs] Error 23

going to re-build ohNet, that directory doesn't exist so I am going to see if this will add it part of the build process.. I will do some self-discovery, do not want you to carry me every hurdle I come across (willing to learn).
Find all posts by this user
04-02-2013, 05:10 PM
Post: #4
RE: ohNet Installtion
The same command works okay for us. Can I confirm that you've built all the source (using make all) first?

For reference, we maintain and test builds for
  • Linux x86
  • Linux x64
  • Linux ARM (soft float, cross-compiled from x86 host)
We haven't tried a build targeting or hosted on Raspberry Pi so its possible there is an issue here. Other forum users have mentioned Raspberry Pi however so I'd be surprised if the build was this badly broken for it...
Find all posts by this user
04-02-2013, 05:20 PM
Post: #5
RE: ohNet Installtion
I used sudo make, as install file suggested... but reading the output of the current build process, it is creating the folder that was missing.. unsure what I could have done to remove it in the first place though.

If I again cannot install, I will rm -rf the ohNet directory, git clone it again and start with 'make all' as you suggest. I have the feeling though I will not need to..
Find all posts by this user
04-02-2013, 06:42 PM
Post: #6
RE: ohNet Installtion
After over an hours build time, the install procedure worked this time.

Thanks again for your help, Simon.

Now to see how I get on with the rest of openhome Smile
Find all posts by this user
04-02-2013, 08:05 PM (This post was last modified: 04-02-2013 08:08 PM by simonc.)
Post: #7
RE: ohNet Installtion
(04-02-2013 06:42 PM)steve Wrote:  After over an hours build time, the install procedure worked this time.

Thanks again for your help, Simon.

Now to see how I get on with the rest of openhome Smile

Glad to hear you got it working!

Hopefully things will be a bit more straightforward from now on. Feel free to come back with any further questions though.
Find all posts by this user
05-02-2013, 09:15 AM
Post: #8
RE: ohNet Installtion
Took a look at ohOS last night, is it right that the ./go ci-build command requires devtools version 14? while I have version 23? (this is at least what the error I receive tells me).

I also done ./go fetch to get the dependencies but it gathers everything apart from Moq. The version of Moq on github doesn't really explain it's installation or whether I am just to have it available in the folder.

The ohOS also detailed on it's readme file that I could define the moq directory by putting --moq-dir <dir> in the command line for ./waf configure, but I couldn't get this to recognise the --moq-dir switch.

I realise I have probably started with openhome the wrong way, by getting ohNet first. I figured as it was a dependency of ohOS it made sense Smile - should have read all of the readme file though before starting haha.
Find all posts by this user
05-02-2013, 11:20 AM
Post: #9
RE: ohNet Installtion
Hi Steve,

I can probably help you with building ohOS, but I should first say that our focus is currently more toward the AV aspects of Openhome, and we're anticipating making some significant changes to ohOS before it's a particularly stable platform to develop against.

May I ask what you hope to do with ohOS? While we have worked on a home automation app based on ohOS, we have not yet released it. ohOS on its own provides some package management and networking services to home applications. You're welcome to use it for hosting your own applications, but be aware that ohOS itself doesn't have a stable API yet, so you may well need to make significant changes to such applications when the ohOs API is revised.

The ohdevtools version message is an indicator that recent versions of ohdevtools made backwards-incompatible changes. Looking at it, it appears that ohOS was not affected by those changes, so I'll update the version number it's looking for. In the mean-time, you can do the same by editing "projectdata/build_behaviour.py". The required version number appears near the top. We try to avoid making backwards-incompatible changes to ohdevtools, since it (by necessity) lives outside our dependency-fetching system, but sometimes it's necessary.

I'm surprised that ./go fetch is failing to fetch Moq. It works for me on my Windows-x86 machine. I see output like this:

Code:
Performing step 'choose_optional_steps' (reason: 'required')
Performing step 'choose_platform' (reason: 'required')
Performing step 'setup_universal' (reason: 'required')
Performing step 'setup_windows' (reason: 'required')
Performing step 'setup_windows_x86' (reason: 'required')
Performing step 'fetch' (reason: 'default')
Fetching 'Firefly'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/Firefly.0.4+openhome.1.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\AnyPlatform'
  OK
Fetching 'ndesk-options'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/ndesk-options-0.2.1.bin.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\AnyPlatform'
  OK
Fetching 'ohNet'
  from 'http://openhome.org/releases/artifacts/ohNet/ohNet-1.0.362-Windows-x86-dev-release.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\Windows-x86'
  OK
Fetching 'Renci.SshNet'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/Renci.SshNet-14316.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\AnyPlatform'
  OK
Fetching 'NuGet'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/NuGet.1.7.30402.9028.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\AnyPlatform'
  OK
Fetching 'yui-compressor'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/yui-compressor.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\AnyPlatform'
  OK
Fetching 'SharpZipLib'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/SharpZipLib_0840_Bin.tar.gz' (web)
  unpacking to 'W:\git\ohos\dependencies\AnyPlatform'
  OK
Successfully installed 'Gate 0.3.6'.
Successfully installed 'Gate.Hosts.Firefly 0.3.6'.
Successfully installed 'Kayak 0.7.2'.
Successfully installed 'Moq 4.0.10827'.
Successfully installed 'NUnit 2.6.0.12054'.
Successfully installed 'NUnit.Runners 2.6.0.12051'.
Successfully installed 'Owin 0.7'.
Successfully installed 'log4net 2.0.0'.
Performing step 'configure' (reason: 'default')
...

Gate, Kayak, Moq, NUnit, Owin and log4net are fetched using NuGet. I think the note in the README about "--moq-dir" is a little bit dated. If you run "./waf --help" you'll see that there is an option called "--nuget-moq-dir".

We have found NuGet to be quite flakey under Mono, particularly prior to Mono 3.0. Did it fetch the other dependencies correctly? What error message did you see for Moq?

I note that you're developing on a Raspberry Pi with the armhf architecture. You should be okay so long as ohNet and Mono work well on that platform, since every other dependency is platform-independent, but we don't have any such systems that we test on.

You don't need to "make install" ohNet to use it with ohOS. At present, ohOS just treats it as another private library and installs a private copy in its own directory.
Visit this user's website Find all posts by this user
05-02-2013, 11:48 AM
Post: #10
RE: ohNet Installtion
Hi Andrew,

Many thanks for the info.
At this time I am actually just having a play around and wanting to create some kind of upnp device that can search upnp libraries and receive pushed media i.e. airplay for non apple devices (got shairport running for airplay currently but I guess I will not need that when / if I can build something out of openhome).

I guess I am overall looking to make my raspberrypi into a device that operates similarly to a Linn DS Player i.e. Linn Sekrit DSi.

I think my fetch script is different to yours, as it also doesnt grab gate, kayak or nunit.runners - I've been having to set these with the --nuget-xx switches as you described (I figured out the --moq switch was dated).

Code:
pi@raspberrypi ~/openhome/ohos $ ./go fetch -l
Dependency 'Firefly':
    fetches from:     u'http://openhome.org/releases/artifacts/AnyPlatform/Firefly.0.4+openhome.1.tar.gz'
    unpacks to:       'dependencies/AnyPlatform/'
    local override:   no

Dependency 'ndesk-options':
    fetches from:     u'http://openhome.org/releases/artifacts/AnyPlatform/ndesk-options-0.2.1.bin.tar.gz'
    unpacks to:       'dependencies/AnyPlatform/'
    local override:   no

Dependency 'ohNet':
    fetches from:     u'http://openhome.org/releases/artifacts/ohNet/ohNet-1.0.433-Linux-x86-dev-release.tar.gz'
    unpacks to:       'dependencies/Linux-x86/'
    local override:   no

Dependency 'Renci.SshNet':
    fetches from:     u'http://openhome.org/releases/artifacts/AnyPlatform/Renci.SshNet-14316.tar.gz'
    unpacks to:       'dependencies/AnyPlatform/'
    local override:   no

Dependency 'NuGet':
    fetches from:     u'http://openhome.org/releases/artifacts/AnyPlatform/NuGet.1.7.30402.9028.tar.gz'
    unpacks to:       'dependencies/AnyPlatform/'
    local override:   no

Dependency 'yui-compressor':
    fetches from:     u'http://openhome.org/releases/artifacts/AnyPlatform/yui-compressor.tar.gz'
    unpacks to:       'dependencies/AnyPlatform/'
    local override:   no

Dependency 'SharpZipLib':
    fetches from:     u'http://openhome.org/releases/artifacts/AnyPlatform/SharpZipLib_0840_Bin.tar.gz'
    unpacks to:       'dependencies/AnyPlatform/'
    local override:   no

Just ran fetch again, wanted to paste to you it's output, and turns out there is an error with nuget that I missed.

Code:
pi@raspberrypi ~/openhome/ohos $ sudo ./go fetch --all --nuget
Fetching 'Firefly'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/Firefly.0.4+openhome.1.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/AnyPlatform'
  OK
Fetching 'ndesk-options'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/ndesk-options-0.2.1.bin.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/AnyPlatform'
  OK
Fetching 'ohNet'
  from 'http://openhome.org/releases/artifacts/ohNet/ohNet-1.0.433-Linux-x86-dev-release.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/Linux-x86'
  OK
Fetching 'Renci.SshNet'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/Renci.SshNet-14316.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/AnyPlatform'
  OK
Fetching 'NuGet'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/NuGet.1.7.30402.9028.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/AnyPlatform'
  OK
Fetching 'yui-compressor'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/yui-compressor.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/AnyPlatform'
  OK
Fetching 'SharpZipLib'
  from 'http://openhome.org/releases/artifacts/AnyPlatform/SharpZipLib_0840_Bin.tar.gz' (web)
  unpacking to '/home/pi/openhome/ohos/dependencies/AnyPlatform'
  OK
Could not load type 'NuGet.Commands.ProjectFactory' from assembly 'NuGet, Version=1.7.30402.9028, Culture=neutral, PublicKeyToken=null'.
Command '['mono', '--runtime=v4.0.30319', 'dependencies/AnyPlatform/NuGet.1.7.30402.9028/NuGet.exe', 'install', 'projectdata/packages.config', '-OutputDirectory', 'dependencies/nuget']' returned non-zero exit status 1

That is everything that is fetched, I don't see nuget grabbing anything either, just an exe file sitting in a folder.

It's quite likely I don't need ohOS yet, maybe I can achieve my basic goals with just ohNet, but I would like to include ohSongcast too.

In my mind, I want to have the openhome platform in it's current state installed; to then explore it's possibilities and what I can achieve with it.

It is very possible I am going about this all wrong, but I'm happy to take all this on as a learning curve.
Find all posts by this user


Forum Jump: