SageTV Community  

Go Back   SageTV Community > SageTV Development and Customizations > SageTV Github Development

Notices

SageTV Github Development Discussion related to SageTV Open Source Development. Use this forum for development topics about the Open Source versions of SageTV, hosted on Github.

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 06-21-2019, 10:44 AM
ASegredo ASegredo is offline
Sage Advanced User
 
Join Date: Jun 2005
Posts: 107
Build errors (Linux, not on Ubuntu)

After a year or two, I'm trying again to build from source. I've been using SageTV 9 from the bintray for six months and it's working fine, yet I want to build it against the day when this website goes dark.

I'm on Gentoo (sorry). I know I was advised to install Ubuntu, but I tried it and I hate it.
The error is coming right at the beginning of building Sage.jar using the downloaded gradle (2.6?)

Bulding Sage.jar...
[ant:exec] The command attribute is deprecated.
Please use the executable attribute and nested arg elements.

FAILURE: Build failed with an exception.

* Where:
Build file '/var/tmp/portage/media-tv/sagetv-1.0/work/sagetv-master/build.gradle' line: 312

* What went wrong:
A problem occurred evaluating root project 'sagetv-master'.
> exec returned: 128

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Again with --stacktrace

Short version:
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: : exec returned: 128
at org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:643)
at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:669)

Long version:

* Exception is:
org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'sagetv-master'.
at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:93)
at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$1.run(DefaultScriptPluginFactory.java:148)
at org.gradle.configuration.ProjectScriptTarget.addConfiguration(ProjectScriptTarget.java:72)
at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:153)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:38)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:25)
at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34)
at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:55)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:495)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:89)
at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:42)
at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35)
at org.gradle.initialization.DefaultGradleLauncher$2.run(DefaultGradleLauncher.java:129)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:126)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:36)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:103)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:97)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:97)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:102)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:47)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:32)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:77)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:47)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:66)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:71)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: : exec returned: 128
at org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:643)
at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:669)
at org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:495)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:77)
at org.gradle.api.internal.project.ant.BasicAntBuilder.doInvokeMethod(BasicAntBuilder.java:92)
at build_4laeke1w7a0flguyc1pm3xeon.getBuildNumber(/var/tmp/portage/media-tv/sagetv-1.0/work/sagetv-master/build.gradle:312)
at build_4laeke1w7a0flguyc1pm3xeon$_run_closure1.doCall(/var/tmp/portage/media-tv/sagetv-1.0/work/sagetv-master/build.gradle:37)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:67)
at org.gradle.api.internal.plugins.ExtensionsStorage$ExtensionHolder.configure(ExtensionsStorage.java:145)
at org.gradle.api.internal.plugins.ExtensionsStorage.configureExtension(ExtensionsStorage.java:69)
at org.gradle.api.internal.plugins.DefaultConvention$ExtensionsDynamicObject.invokeMethod(DefaultConvention.java:207)
at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:150)
at org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.java:79)
at build_4laeke1w7a0flguyc1pm3xeon.run(/var/tmp/portage/media-tv/sagetv-1.0/work/sagetv-master/build.gradle:12)
at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:91)
... 58 more
Reply With Quote
  #2  
Old 06-21-2019, 05:57 PM
ASegredo ASegredo is offline
Sage Advanced User
 
Join Date: Jun 2005
Posts: 107
Had some java setuo problems.
Now it stops at:
../gradlew --daemon sageJar

With:

/etc/java-config-2/current-system-vm/bin/java -Dorg.gradle.appname=gradlew -classpath /var/tmp/portage/media-tv/sagetv-1.0/work/sagetv-master/gradle/wrapper/gradle-wrapper.jar org.gradle.wrapper.GradleWrapperMain --daemon sageJar

FAILURE: Build failed with an exception.

* What went wrong:
Task 'sageJar' not found in root project 'build'.
Reply With Quote
  #3  
Old 06-22-2019, 09:22 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,541
Quote:
Originally Posted by ASegredo View Post
Had some java setuo problems.
Now it stops at:
../gradlew --daemon sageJar

With:

/etc/java-config-2/current-system-vm/bin/java -Dorg.gradle.appname=gradlew -classpath /var/tmp/portage/media-tv/sagetv-1.0/work/sagetv-master/gradle/wrapper/gradle-wrapper.jar org.gradle.wrapper.GradleWrapperMain --daemon sageJar

FAILURE: Build failed with an exception.

* What went wrong:
Task 'sageJar' not found in root project 'build'.
There's a lot of things that need to go right in order to build sagetv from scratch, including having all the right versions of libraries and gcc, etc.

For that reason, I always build using a docker container.

https://github.com/stuckless/sagetv-...r/sagetv-build

I found that most modern linuxes cannot build sagetv without a lot work, but, the docker container basically pulls in what is required on a compatible linux base install.
Reply With Quote
  #4  
Old 06-22-2019, 05:39 PM
ASegredo ASegredo is offline
Sage Advanced User
 
Join Date: Jun 2005
Posts: 107
Thanks. Stuckless. I think I have you to thank for the binary Linux builds. I've been using them on two machines and they are great.

I have a dedicated Win 7 box recording TV with SageTV. It's an Athlon64 with only 4 Gig memory and a SATA 1 1TB drive. I'm going to repl
Reply With Quote
  #5  
Old 06-22-2019, 05:52 PM
ASegredo ASegredo is offline
Sage Advanced User
 
Join Date: Jun 2005
Posts: 107
Thanks. Stuckless. I think I have you to thank for the binary Linux builds. I've been using them on two machines and they are great.

I have a dedicated Win 7 box recording TV with SageTV. It's an Athlon64 X2 with only 4 Gig memory and a SATA 1 1TB drive. I'm going to replace it with a slightly newer Athlon II X3, a new Team Elite SSD and a new modern 1TB WD Black HDD (on sale for $50 off, I couldn't resist). Installing Linux and (your binary) SageTV on the SSD and using the HDD for storage. Also plan to swap the current HVR-1600 with the Hauppauge Quad currently in a dual boot machine. The quad seems better supported in Linux. I always see four devices instead of two and it always initializes (Windows sometimes needs to be turned off, power off for ten seconds then turned on again). I worry about the 4G (the most that the mobo supports) but the older slower Win 7 mobo also has only 4G, and this will be a dedicated machine.

I don't know java and really just wanted to build it against the day your site goes dark and time invalidates the binary. I may be asking too much of you. Why does it say "unknown task" when sageJar is obviously the target not a task.

Again, thank you so much for the Linux binarys. SageTV was the main application tieing me to Windows.

Last edited by ASegredo; 06-22-2019 at 05:54 PM.
Reply With Quote
  #6  
Old 06-23-2019, 04:56 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,541
Unfortunately, I can't offer any help on the error you are experiencing. My experience with gentoo is very limited and the older I get the more I tend to just go with the main stream so that I spend less time troubleshooting.

As I mentioned, the docker build container is what I use to rebuild sagetv, even on my Ubuntu developement desktop. I use it because it's a fully self contained build environment fully configured to rebuild sagetv from sources. Rebuilding sagetv, even on the very specific build configuration, can be a daunting task.

While I'm a diehard linux fan, and I use it for personal computers, servers and even work laptop, I still want things to "just work" and I don't want to spend time figuring stuff out For that reason, I run Ubuntu (my fav distro) on my development workstation. I hated it when they moved to Unity, and I wasn't thrilled when they moved to Gnome 3, but, at the end of the day, even through they changed how to access stuff, I still know how to type and how to click on buttons, so, I can figure stuff out. It's more important that everything else just work.

I used to run a headless Ubuntu server for my media server + NAS, which runs sagetv. Managing the server seemed like too much work, so, I moved it unRAID (which runs linux under the hood), and created the sagetv docker container to run sagetv (fully configured), and now I spend a few minutes every couple of months on maintenance instead of my weekends. The interface for unRAID is completely web based. Upgrades are easy.

For my work laptop, I run Fedora. I don't love it, but, it's what my company is willing to support, and more importantly, when I'm looking for packages that are created by my company, they just install fine on Fedora (and they don't have ubuntu packages). I spent a couple years going down the "I must run ubuntu on my work computer" road, but then I said, this is stupid... just use the linux operating system they support and learn to work around what is different (or adjust). In most cases, things that I hated I simply adjusted to how to do it differently.

In short the easiest systems to support are system that require the fewest changes. That applies to any system, windows, linux, mac, phone, etc.

So, my advice (unsoliticed ) is choose an architecture that requires the fewest amount of changes to do your core work. From there, learn to use things that are there without changing it for the sake of change. Finally, change the things thare simply don't work, but recognize the difference between "doesn't work" and "works differently than I like".

A feww weeks back a friend of mine decided to install linux, and he went with Linux Mint. I think he tried something else before that. And then he started pinging me with "how do I get .... working..." or "... isn't working how do I install this driver ...", or, ... how do I configure....", and I asked, why not just install ubuntu, since everything you are asking for is just there and works. He said he didn't like ubuntu, which I took to mean that he didn't like the look of it, or where icons were placed, etc. This went on for a few weeks, and in most cases I couldn't help. Finally I got a message from him, "I installed Ubuntu, you are right, it just works, and has all those things I was asking you about".

So, this a long message that provides no help for your particular problem, other than advice on how to work around it

If you truly want to rebuild sagetv from sources (something that is not required, unless you are changing code), and you want to prepare for the eventual case that this site goes dark, then use the docker build container Or fork the sagetv repo and setup travis to rebuild for you (that's what the official repo does). Both of these will fully enable you to create binaries from sources.

I do get the OCD like behaviour to need to get something to work, but I also ask myself time and time again... is spending this much effort on something worth it.
Reply With Quote
  #7  
Old 06-23-2019, 08:21 AM
ASegredo ASegredo is offline
Sage Advanced User
 
Join Date: Jun 2005
Posts: 107
But then I have to learn how to setup and use Docker!
Maybe it's not hard. Maybe I should setup an Ubuntu VM just for building, like I have the Win 7 VM just to run TurboTax.

Edit: Will you entertain support request for building on Ubuntu? Or am I just being too anal about this?

I still remember the big shock the day I came to this site to buy a Linux license for my grandson and found out that I couldn't!
That was before the open source version, obviously. I cobbled up a wxGTK program that tuned and played the two channels he wanted but that was NTSC not ATSC.

It's my understanding that HDCP will eventually render the recording market moot and devices will no longer be sold. Right now I still have OTA TV and love recording with Sage and stripping the commercials (almost a third of the programs!)

Last edited by ASegredo; 06-23-2019 at 08:28 AM.
Reply With Quote
  #8  
Old 06-24-2019, 07:39 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,541
I can't promise support, no matter the direction you take especially given how infrequently I visit the forums these days (just so much other stuff going on right now). But, if you use the docker container, at least I can likely reproduce any problems and have the potential to fix it... something I can't do with gentoo (or unwilling).

Like eveything in gentoo... setting up docker appears to be no trivial process.

https://wiki.gentoo.org/wiki/Docker

But, if you get it working then you can try running the docker container. If you go the vm route, be sure you get the right version of ubuntu (since as I said, the reason the containers exists is to make sure all versions of the build chain, including the OS, is correct). All this information you can get from studying the Dockerfile in the container repo, or the .travis.yml in the sagetv source repo.


Quote:
Originally Posted by ASegredo View Post
But then I have to learn how to setup and use Docker!
Maybe it's not hard. Maybe I should setup an Ubuntu VM just for building, like I have the Win 7 VM just to run TurboTax.

Edit: Will you entertain support request for building on Ubuntu? Or am I just being too anal about this?

I still remember the big shock the day I came to this site to buy a Linux license for my grandson and found out that I couldn't!
That was before the open source version, obviously. I cobbled up a wxGTK program that tuned and played the two channels he wanted but that was NTSC not ATSC.

It's my understanding that HDCP will eventually render the recording market moot and devices will no longer be sold. Right now I still have OTA TV and love recording with Sage and stripping the commercials (almost a third of the programs!)
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Ubuntu 16:04 build sagetv - faad2/mp4ff compile error mwnswiss SageTV Github Development 3 12-17-2017 07:47 AM
Problem Updating to the Newest Build on Ubuntu phantomii SageTV Linux 3 08-28-2017 07:57 AM
Linux Ubuntu 16.04 build error mwnswiss SageTV Github Development 1 05-21-2016 02:14 PM
Problem building on Linux (not Ubuntu) ASegredo SageTV Github Development 12 10-13-2015 09:59 AM
Ubuntu 7.04 and SageTv Linux 6.1 Box8489 SageTV Linux 7 06-01-2007 07:25 PM


All times are GMT -6. The time now is 12:54 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.