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
  #21  
Old 08-12-2015, 06:28 PM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
I tried building on 32-bit and got an error during the buildso phase. It appears that it's trying to target amd64 rather than the i386 Java that's installed. Using both the default-jre and default-jdk on Ununtu Server 15.04.

64-bit built but I was getting a core dump during channel scanning on my HDHR's.
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #22  
Old 08-12-2015, 06:57 PM
tmiranda's Avatar
tmiranda tmiranda is offline
SageTVaholic
 
Join Date: Jul 2005
Location: Central Florida, USA
Posts: 5,805
Quote:
Originally Posted by stuckless View Post
Do you have a $JDK_HOME/include/ dir?

Code:
ls $JDK_HOME/include/
Also what is you JDK_HOME pointing to...
Code:
echo $JDK_HOME
If not, then you are likely only pointing a JRE and you'll need the full SDK.
Maybe I had that wrong? I tried it again and now it got farther. This time it failed building the shared libraries with an error saying it could not find -ljawt.
__________________

Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders.

Last edited by tmiranda; 08-12-2015 at 07:02 PM.
Reply With Quote
  #23  
Old 08-12-2015, 07:08 PM
Fuzzy's Avatar
Fuzzy Fuzzy is offline
SageTVaholic
 
Join Date: Sep 2005
Location: Jurupa Valley, CA
Posts: 9,957
Quote:
Originally Posted by stuckless View Post
Do you have a $JDK_HOME/include/ dir?

Code:
ls $JDK_HOME/include/
Also what is you JDK_HOME pointing to...
Code:
echo $JDK_HOME
If not, then you are likely only pointing a JRE and you'll need the full SDK.
HA! yeah.. I should know better than that. did a fresh linux VM for this, and somehow missed setting the pointer. So not used to having to do everything manually in linux.. ;-)
__________________
Buy Fuzzy a beer! (Fuzzy likes beer)

unRAID Server: i7-6700, 32GB RAM, Dual 128GB SSD cache and 13TB pool, with SageTVv9, openDCT, Logitech Media Server and Plex Media Server each in Dockers.
Sources: HRHR Prime with Charter CableCard. HDHR-US for OTA.
Primary Client: HD-300 through XBoxOne in Living Room, Samsung HLT-6189S
Other Clients: Mi Box in Master Bedroom, HD-200 in kids room
Reply With Quote
  #24  
Old 08-12-2015, 07:33 PM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
Quote:
Originally Posted by tmiranda View Post
Maybe I had that wrong? I tried it again and now it got farther. This time it failed building the shared libraries with an error saying it could not find -ljawt.
Same error I was getting on 32-bit. Does the jre path show its trying to target amd64?
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #25  
Old 08-12-2015, 07:42 PM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,540
Quote:
Originally Posted by Taddeusz View Post
Same error I was getting on 32-bit. Does the jre path show its trying to target amd64?
Yeah, as a general rule, if you are on a 64bit system then keep EVERYTHING (ie, Java) 64bit... don't mix and match.
Reply With Quote
  #26  
Old 08-12-2015, 07:45 PM
MrD MrD is offline
Sage Aficionado
 
Join Date: Feb 2005
Location: Washington DC
Posts: 387
To build 32 bit on a 64bit OS, you will need to install / setup / cross compile the native code.
__________________
[size=1]-MrD
=============
Linux Server 7.1.9 (1)HD300 (1) HD200 (1) HD100 (2) PC Clients
Intel Xeon L? 32Gb
CetonTV cable card /FIOS
Reply With Quote
  #27  
Old 08-12-2015, 08:25 PM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
Quote:
Originally Posted by stuckless View Post
Yeah, as a general rule, if you are on a 64bit system then keep EVERYTHING (ie, Java) 64bit... don't mix and match.
I think you don't understand. I was on 32-bit Ubuntu with the 32-bit default-jre & default-jdk from the Ubuntu repository. During by the compilation of the so's it showed it was trying to target amd64 while it was running on 32-bit. I believe that's the reason for the compilation error.
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #28  
Old 08-13-2015, 04:58 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,540
Quote:
Originally Posted by Taddeusz View Post
I think you don't understand. I was on 32-bit Ubuntu with the 32-bit default-jre & default-jdk from the Ubuntu repository. During by the compilation of the so's it showed it was trying to target amd64 while it was running on 32-bit. I believe that's the reason for the compilation error.
That is interesting, since I would not expect a 32bit system to even attempt a 64bit compile. I don't have a 32bit system to even test this on (I could setup a VM though). So, did you ever get it to compile, or are you still failing? I'm assuming Jeff compiled this all the time on 32bit a system. Eventually we might get this to cross to compile 32/64 bit, as MrD noted, but I think you have to be on 64bit system to create a 64bit binary (I think)... that why, I find it really odd that it would attempt it, in your case.
Reply With Quote
  #29  
Old 08-13-2015, 07:05 AM
tmiranda's Avatar
tmiranda tmiranda is offline
SageTVaholic
 
Join Date: Jul 2005
Location: Central Florida, USA
Posts: 5,805
Quote:
Originally Posted by Taddeusz View Post
I think you don't understand. I was on 32-bit Ubuntu with the 32-bit default-jre & default-jdk from the Ubuntu repository. During by the compilation of the so's it showed it was trying to target amd64 while it was running on 32-bit. I believe that's the reason for the compilation error.
This is what I am seeing as well. I'm going from memory at the moment but I think I saw a -L in the command line that contained a reference to a path with "amd64" in it.
__________________

Sage Server: 8th gen Intel based system w/32GB RAM running Ubuntu Linux, HDHomeRun Prime with cable card for recording. Runs headless. Accessed via RD when necessary. Four HD-300 Extenders.
Reply With Quote
  #30  
Old 08-13-2015, 07:08 AM
routerunner's Avatar
routerunner routerunner is offline
Sage Icon
 
Join Date: May 2008
Location: Wiltshire, UK
Posts: 1,371
Quote:
Originally Posted by stuckless View Post
...but I think you have to be on 64bit system to create a 64bit binary (I think)... that why, I find it really odd that it would attempt it, in your case.
Fortunately not . If you have multilib GCC is just as simple as adding "-m64" to CFLAGS and LDFLAGS (of course this is for the C/C++ part not JAVA).

Eddy
__________________

Automatic Power Off | Squeezeslave | DVB-S Importer | DVB Decrypter & Card Client | Tuner Preroll


Every man is a damn fool for at least five minutes every day; wisdom consists in not exceeding the limit. ~ Elbert Hubbard

Last edited by routerunner; 08-13-2015 at 07:13 AM.
Reply With Quote
  #31  
Old 08-13-2015, 07:32 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,540
Quote:
Originally Posted by tmiranda View Post
This is what I am seeing as well. I'm going from memory at the moment but I think I saw a -L in the command line that contained a reference to a path with "amd64" in it.
After doing a search for amd64
https://github.com/google/sagetv/sea...%9C%93&q=amd64

Code:
native/so/SageLinux/Makefile 
Showing the top match. Last indexed 3 days ago.

1	JDK_HOME ?= /usr/local/j2sdk
2	#JAVA_ARCH ?= i386
3	JAVA_ARCH ?= amd64
I'd modify the Makefile and comment out the amd64 line and uncomment the i386 line (or export JAVA_ARCH=i386 from the command line before the build)

Quote:
Originally Posted by routerunner View Post
Fortunately not . If you have multilib GCC is just as simple as adding "-m64" to CFLAGS and LDFLAGS (of course this is for the C/C++ part not JAVA).

Eddy
That's good know... I have very little experience with cross compiling, but I have feeling we'll have to do it
Reply With Quote
  #32  
Old 08-13-2015, 07:42 AM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
Quote:
Originally Posted by stuckless View Post
After doing a search for amd64
https://github.com/google/sagetv/sea...%9C%93&q=amd64

Code:
native/so/SageLinux/Makefile 
Showing the top match. Last indexed 3 days ago.

1	JDK_HOME ?= /usr/local/j2sdk
2	#JAVA_ARCH ?= i386
3	JAVA_ARCH ?= amd64
I'd modify the Makefile and comment out the amd64 line and uncomment the i386 line (or export JAVA_ARCH=i386 from the command line before the build)



That's good know... I have very little experience with cross compiling, but I have feeling we'll have to do it
I wonder if there is a way to automatically detect the architecture from the makefile?

Currently I have dropped back to Ubuntu 14.04LTS 64-bit just in case systemd might be causing issues. I'll report if it has changed anything. I'll try 32-bit again if this test doesn't work.
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #33  
Old 08-13-2015, 07:53 AM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,540
Quote:
Originally Posted by Taddeusz View Post
I wonder if there is a way to automatically detect the architecture from the makefile?

Currently I have dropped back to Ubuntu 14.04LTS 64-bit just in case systemd might be causing issues. I'll report if it has changed anything. I'll try 32-bit again if this test doesn't work.
I'm pretty it can be done, since most of the other 3rd party stuff uses autoconf and create the Makefiles... maybe this should get an upgrade (or maybe simpler to just do a check in the Makefile as you suggested, but I don't know how to do that)
Reply With Quote
  #34  
Old 08-13-2015, 08:33 AM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
Quote:
Originally Posted by stuckless View Post
After doing a search for amd64
https://github.com/google/sagetv/sea...%9C%93&q=amd64

Code:
native/so/SageLinux/Makefile 
Showing the top match. Last indexed 3 days ago.

1	JDK_HOME ?= /usr/local/j2sdk
2	#JAVA_ARCH ?= i386
3	JAVA_ARCH ?= amd64
I'd modify the Makefile and comment out the amd64 line and uncomment the i386 line (or export JAVA_ARCH=i386 from the command line before the build)



That's good know... I have very little experience with cross compiling, but I have feeling we'll have to do it
A fix for this is to add the export JAVA_ARCH to the setup. Setting it to i386 or amd64 depending on your platform. You can actually add both of those to /etc/environment on Ubuntu to have them permanently set.
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #35  
Old 08-13-2015, 10:45 AM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
Ok, the test on 14.04LTS 64-bit was unsuccessful. Still got the crash during channel scanning. Installed 15.05 32-bit. Set the JAVA_ARCH environment variable to i386 and successfully built 32-bit.

I also changed the dependencies for the deb packages to "default-jre" and successfully installed from the deb. The only caveat to this is that your "activkey" file must go into /etc/init.d.

Running a channel scan now. So far no crash but it's also not finding any channels.
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #36  
Old 08-13-2015, 11:49 AM
wildgoose wildgoose is offline
Sage Advanced User
 
Join Date: Jan 2010
Location: CA
Posts: 156
Quote:
Originally Posted by Fuzzy View Post
I have the same issue, says it's missing jni.h
I hit the same issue last night. Turns out I set JAVA_HOME instead of JDK_HOME. With that fixed, everything did built!

I started with a clean Ubuntu Server 14.04 VM. Installed Oracle Java 8 by follow the instruction at: http://askubuntu.com/questions/52114...n-ubuntu-14-04
Code:
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Then followed stuckless's instructions on getting the extra packages, etc. It finished the built at the end and I got the .tar.gz and .deb files:

Code:
-rw-r--r-- 1 raychi raychi  6563356 Aug 12 18:55 sagetv-client_9.0.0_i386.deb
-rw-rw-r-- 1 raychi raychi  7747117 Aug 12 18:55 sagetv-client_9.0.0.tar.gz
-rw-r--r-- 1 raychi raychi 19870062 Aug 12 18:55 sagetv-server_9.0.0_i386.deb
-rw-rw-r-- 1 raychi raychi 27081501 Aug 12 18:55 sagetv-server_9.0.0.tar.gz
__________________
sagetv-for-plexmediacenter v8.3.1 is available! Github/Download site.
Reply With Quote
  #37  
Old 08-13-2015, 12:00 PM
Taddeusz Taddeusz is offline
SageTVaholic
 
Join Date: Nov 2004
Location: Yukon, OK
Posts: 3,922
Quote:
Originally Posted by Taddeusz View Post
Ok, the test on 14.04LTS 64-bit was unsuccessful. Still got the crash during channel scanning. Installed 15.05 32-bit. Set the JAVA_ARCH environment variable to i386 and successfully built 32-bit.

I also changed the dependencies for the deb packages to "default-jre" and successfully installed from the deb. The only caveat to this is that your "activkey" file must go into /etc/init.d.

Running a channel scan now. So far no crash but it's also not finding any channels.
Ok, channel scans complete. It does fine with QAM but for some reason fails to detect ATSC and sets it up as QAM.
__________________
Server: i5 8400, ASUS Prime H370M-Plus/CSM, 16GB RAM, 15TB drive array + 500GB cache, 2 HDHR's, SageTV 9, unRAID 6.6.3
Client 1: HD300 (latest FW), HDMI to an Insignia 65" 1080p LCD and optical SPDIF to a Sony Receiver
Client 2: HD200 (latest FW), HDMI to an Insignia NS-LCD42HD-09 1080p LCD
Reply With Quote
  #38  
Old 08-13-2015, 01:24 PM
jbuszkie's Avatar
jbuszkie jbuszkie is offline
Sage Fanatic
 
Join Date: Aug 2003
Location: Westminster, MA
Posts: 919
Where the windows specific "how to build"! :-)


Jim "Stuck in windows land"
Reply With Quote
  #39  
Old 08-13-2015, 01:30 PM
stuckless's Avatar
stuckless stuckless is offline
SageTVaholic
 
Join Date: Oct 2007
Location: London, Ontario, Canada
Posts: 9,540
Quote:
Originally Posted by jbuszkie View Post
Where the windows specific "how to build"! :-)


Jim "Stuck in windows land"
Well, there's not "full" end to end build, as it has in Linux... but, I add add gradle support that enables Windows users to rebuild the Sage.jar quite easily. This would allow windows users to at least make changes to the Sage core java, and add it into their existing system.

https://github.com/google/sagetv/blo...er/BUILDING.md
Reply With Quote
  #40  
Old 08-13-2015, 01:41 PM
jbuszkie's Avatar
jbuszkie jbuszkie is offline
Sage Fanatic
 
Join Date: Aug 2003
Location: Westminster, MA
Posts: 919
Quote:
Originally Posted by stuckless View Post
Well, there's not "full" end to end build, as it has in Linux... but, I add add gradle support that enables Windows users to rebuild the Sage.jar quite easily. This would allow windows users to at least make changes to the Sage core java, and add it into their existing system.

https://github.com/google/sagetv/blo...er/BUILDING.md
Thanks! Now if I only had time to play with this all!!!
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
I need a YouTube primer Skiier__Dude SageTV Customizations 0 05-30-2012 10:51 AM
Close to building a Linux SageTV Computer, which Linux distribution is best? davephan SageTV Linux 8 02-24-2011 06:57 PM
Can I set SageTV to use a specific Tuner for certain channels? 2FAST4U SageTV Software 1 05-12-2010 06:55 PM
Cable STB primer help requests cavalli Hardware Support 1 12-12-2008 09:27 AM
SageTV Linux specific features ntisdale SageTV Linux 0 04-11-2007 05:12 AM


All times are GMT -6. The time now is 10:35 AM.


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