Testing image for the Dream Multimedia DM7...
zeros 13 Feb 2016
Hi!
Is there anyone who could build for me a test software with modified cpp files?
I'll add the three modified files:
frontend.cpp
frontend.h
idvb.h
Added new attribute 'changeType'
I need it to complete the USB tuner problem, this of which we recently talked about.
Since I do not have the construction environment, then I would be grateful, if someone can do it for me (for Dream Multimedia DM7020 HD).
Attached Files
athoik 13 Feb 2016
Is there a problem creating a development environment? We can help you to get this done.
Also would be nice if you could probide a proper patch with a description of what you are trying to solve.
zeros 13 Feb 2016
I wish to create new content, to help for this part:
http://forums.openpl...-working/page-4
If it is not very difficult, then what I have to do, please teach me!?
Pr2 13 Feb 2016
athoik 13 Feb 2016
1. Install as Root the prerequisites (sudo or su -)
apt-get install gawk wget git-core cvs subversion diffstat unzip texinfo gcc-multilib build-essential chrpath
2. Clone OpenPLi OE
cd ~
git clone git://github.com/openpli/openpli-oe-core openpli4
cd openpli4
3. First run make to download OE subprojects
cd ~/openpli4
make
4. Make image for dm7020hd
cd ~/openpli4
MACHINE=dm7020hd make image
Usually I setup my sources directory on another folder (eg ~/sources) in order to reuse them.
You have to edit ~/openpli4/site.conf in order to change sources directory.
If you have build an image succesfully you need to create a bbappend and append to SRC_URI the patches you like to test.
Edited by athoik, 13 February 2016 - 12:50.
zeros 13 Feb 2016
The questions will come for sure, but I can't at the moment to deal with it.
zeros 13 Feb 2016
zeros 14 Feb 2016
My Debian 8 is up and running, thanks to athoik for the fantastic tutorial! Thank also to Pr2. It is not at all difficult, if such a nice tutorial on the front!
What am I supposed to do with the last error, which arose? I understand that I need to log in as normal user, not as root.
Checking connectivity... done.
Submodule path 'openembedded-core': checked out 'eb9d896db2fc67bac8efd258744d06fbbee87f06'The openpli OE is now up-to-date.make[1]: Leaving directory '/root/openpli4'Generating /root/openpli4/build/env.sourceGenerating /root/openpli4/build/conf/openpli.confGenerating /root/openpli4/build/conf/bblayers.confGenerating /root/openpli4/build/conf/local.confOpenembedded for the OpenPLi 4 environment has been initializedproperly. Now you can start building your image, by doing either:MACHINE=... make imageor:cd /root/openpli4/buildsource env.sourceMACHINE=... bitbake openpli-enigma2-imageor, if you want to build not just the image, but the optional packages in the feed as well:MACHINE=... bitbake openpli-enigma2-feedroot@Debian:~/openpli4# cd ~/openpli4root@Debian:~/openpli4# MACHINE=dm7020hd make imageBuilding image for dm7020hdERROR: OE-core's config sanity checker detected a potential misconfiguration.Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).Following is the list of potential problems / advisories:Do not use Bitbake as root.Summary: There was 1 ERROR message shown, returning a non-zero exit code.Makefile:85: recipe for target 'image' failedmake: *** [image] Error 1root@Debian:~/openpli4# ^Croot@Debian:~/openpli4#
beastyboy 14 Feb 2016
zeros 14 Feb 2016
Thanks, already fine
The openpli OE is now up-to-date.
make[1]: Leaving directory '/home/user1/openpli4'Generating /home/user1/openpli4/build/env.sourceGenerating /home/user1/openpli4/build/conf/openpli.confGenerating /home/user1/openpli4/build/conf/bblayers.confGenerating /home/user1/openpli4/build/conf/local.confOpenembedded for the OpenPLi 4 environment has been initializedproperly. Now you can start building your image, by doing either:MACHINE=... make imageor:cd /home/user1/openpli4/buildsource env.sourceMACHINE=... bitbake openpli-enigma2-imageor, if you want to build not just the image, but the optional packages in the feed as well:MACHINE=... bitbake openpli-enigma2-feeduser1@Debian:~/openpli4$ cd ~/openpli4user1@Debian:~/openpli4$ MACHINE=dm7020hd make imageBuilding image for dm7020hdParsing recipes: 86% |##################################################################################################################################
zeros 15 Feb 2016
The software compilation will take quite a long time!?
I`ve got now such errors, it seems that the main reason is "No space left on device".
user1@Debian:~$ cd ~user1@Debian:~$ cd openpli4user1@Debian:~/openpli4$ cd ~/openpli4user1@Debian:~/openpli4$ makeOpenembedded for the OpenPLi 4 environment has been initializedproperly. Now you can start building your image, by doing either:MACHINE=... make imageor:cd /home/user1/openpli4/buildsource env.sourceMACHINE=... bitbake openpli-enigma2-imageor, if you want to build not just the image, but the optional packages in the feed as well:MACHINE=... bitbake openpli-enigma2-feeduser1@Debian:~/openpli4$ cd ~/openpli4user1@Debian:~/openpli4$ MACHINE=dm7020hd make imageBuilding image for dm7020hdLoading cache: 100% |########################################################################################################################################################| ETA: 00:00:00Loaded 2354 entries from dependency cache.Parsing recipes: 100% |######################################################################################################################################################| Time: 00:00:49Parsing of 2097 .bb files complete (1936 cached, 161 parsed). 2586 targets, 311 skipped, 0 masked, 0 errors.NOTE: Resolving any missing task queue dependenciesBuild Configuration:BB_VERSION = "1.25.0"BUILD_SYS = "x86_64-linux"NATIVELSBSTRING = "Debian-8.3"TARGET_SYS = "mipsel-oe-linux"MACHINE = "dm7020hd"DISTRO = "openpli"DISTRO_VERSION = "4"TUNE_FEATURES = "o32 fpu-hard mips32"TARGET_FPU = ""meta-oemeta-filesystemsmeta-multimediameta-networkingmeta-python = "(detachedfrom9c926ef):9c926ef2d463e643fb0dc87f6535a12e35d039ab"meta = "(detachedfromeb9d896):eb9d896db2fc67bac8efd258744d06fbbee87f06"meta-openplimeta-dream = "master:f152036cf525d53d7dc1b3adceb328ce4e54644a"meta-vuplus = "(detachedfrom5ceccaa):5ceccaab8866116710d0facd022f9d3442d5b0db"meta-xsarius = "(detachedfrom68cdce8):68cdce82a5d99e5ac055764f4b091fbeb4235899"meta-xp = "(detachedfrom38ba4ae):38ba4aea0e8c2e391e90a845ab77b30d35ed5e95"meta-xtrend = "(detachedfrom66fbc58):66fbc589b76314e10e688dcb2207142afe3b9df1"meta-formuler = "(detachedfrom2f0635f):2f0635faf4f9ef973c4783168aa12580e78c06a8"meta-hd = "(detachedfrom321440e):321440ee26ea4f4e11cf9587bb955ae4317e1a2b"meta-xpeedc = "(detachedfromdbde5f6):dbde5f66bb0486d72609a20e882dad0eacae8645"meta-wetek = "(detachedfromac4d4e7):ac4d4e7013820249f4fe1be8b6bc7084fc66863f"meta-zgemma = "(detachedfrom147bed1):147bed1fc3be730fff44bcd0357c5e2fb6a7acca"meta-local = "master:f152036cf525d53d7dc1b3adceb328ce4e54644a"NOTE: Preparing RunQueueNOTE: Executing SetScene TasksNOTE: Executing RunQueue TasksERROR: Function failed: do_install_locale (log file is located at /home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/temp/log.do_install_locale.8748)ERROR: Logfile of failure stored in: /home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/temp/log.do_install_locale.8748Log data follows:| DEBUG: SITE files ['endian-little', 'bit-32', 'mips-common', 'common-linux', 'common-glibc', 'mipsel-linux', 'common']| DEBUG: Executing shell function do_install_locale| cp: error writing '/home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/image//usr/include/glibc-locale-internal-mips32el-oe-linux/usr/share/info/libc.info-8': No space left on device| cp: failed to extend '/home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/image//usr/include/glibc-locale-internal-mips32el-oe-linux/usr/share/info/libc.info-8': No space left on device| cp: error writing '/home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/image//usr/include/glibc-locale-internal-mips32el-oe-linux/usr/share/info/libc.info-9': No space left on device| cp: failed to extend '/home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/image//usr/include/glibc-locale-internal-mips32el-oe-linux/usr/share/info/libc.info-9': No space left on device| cp: cannot create directory '/home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/image//usr/include/glibc-locale-internal-mips32el-oe-linux/usr/share/locale': No space left on device| WARNING: exit code 1 from a shell command.| ERROR: Function failed: do_install_locale (log file is located at /home/user1/openpli4/build/tmp/work/mips32el-oe-linux/glibc/2.20-r0/temp/log.do_install_locale.8748)ERROR: Task 39 (/home/user1/openpli4/openembedded-core/meta/recipes-core/glibc/glibc_2.20.bb, do_install_locale) failed with exit code '1'No currently running tasks (296 of 3836)NOTE: Tasks Summary: Attempted 296 tasks of which 0 didn't need to be rerun and 1 failed.No currently running tasks (296 of 3836)Summary: 1 task failed:/home/user1/openpli4/openembedded-core/meta/recipes-core/glibc/glibc_2.20.bb, do_install_localeSummary: There was 1 ERROR message shown, returning a non-zero exit code.Makefile:85: recipe for target 'image' failedmake: *** [image] Error 1user1@Debian:~/openpli4$
athoik 15 Feb 2016
Regarding disk space, 20G to 40G would be ok for only one machine.
zeros 15 Feb 2016
Can we get more instruction on this?:
If you have build an image succesfully you need to create a bbappend and append to SRC_URI the patches you like to test.
athoik 15 Feb 2016
Place in the folder testing your patch eg tmp.patch and create the file enigma2.bbappend with the following data:
FILESEXTRAPATHS_prepend := "${THISDIR}:" PR = "r1" SRC_URI += "file://tmp.patch"Now you can run again your build, the enigma2 will include tmp.patch
In build/tmp/deploy/ipk you will find the resulting ipks.
Edited by athoik, 15 February 2016 - 21:26.
zeros 16 Feb 2016
Whether this is a good tutorial on how I should act:
http://linux.byexamp...patch-and-diff/
zeros 16 Feb 2016
The last time, it took time for 11 minutes:
user1@Debian:~$ cd ~
user1@Debian:~$ cd openpli4
user1@Debian:~/openpli4$ cd ~/openpli4
user1@Debian:~/openpli4$ makeOpenembedded for the OpenPLi 4 environment has been initialized
properly. Now you can start building your image, by doing either:MACHINE=... make image
or:
cd /home/user1/openpli4/build
source env.source
MACHINE=... bitbake openpli-enigma2-imageor, if you want to build not just the image, but the optional packages in the feed as well:
MACHINE=... bitbake openpli-enigma2-feed
user1@Debian:~/openpli4$ cd ~/openpli4
user1@Debian:~/openpli4$ MACHINE=dm7020hd make image
Building image for dm7020hd
Loading cache: 100% |########################################################################################################################################################################################################| ETA: 00:00:00
Loaded 2536 entries from dependency cache.
Parsing recipes: 100% |######################################################################################################################################################################################################| Time: 00:02:14
Parsing of 2097 .bb files complete (2046 cached, 51 parsed). 2586 targets, 311 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependenciesBuild Configuration:
BB_VERSION = "1.25.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "Debian-8.3"
TARGET_SYS = "mipsel-oe-linux"
MACHINE = "dm7020hd"
DISTRO = "openpli"
DISTRO_VERSION = "4"
TUNE_FEATURES = "o32 fpu-hard mips32"
TARGET_FPU = ""
meta-oe
meta-filesystems
meta-multimedia
meta-networking
meta-python = "(detachedfrom9c926ef):9c926ef2d463e643fb0dc87f6535a12e35d039ab"
meta = "(detachedfromeb9d896):eb9d896db2fc67bac8efd258744d06fbbee87f06"
meta-openpli
meta-dream = "master:4454187f20bbd4a8aefa1e6590aab2c27897571f"
meta-vuplus = "(detachedfrom5ceccaa):5ceccaab8866116710d0facd022f9d3442d5b0db"
meta-xsarius = "(detachedfrom68cdce8):68cdce82a5d99e5ac055764f4b091fbeb4235899"
meta-xp = "(detachedfrom38ba4ae):38ba4aea0e8c2e391e90a845ab77b30d35ed5e95"
meta-xtrend = "(detachedfrom66fbc58):66fbc589b76314e10e688dcb2207142afe3b9df1"
meta-formuler = "(detachedfrom2f0635f):2f0635faf4f9ef973c4783168aa12580e78c06a8"
meta-hd = "(detachedfrom321440e):321440ee26ea4f4e11cf9587bb955ae4317e1a2b"
meta-xpeedc = "(detachedfromdbde5f6):dbde5f66bb0486d72609a20e882dad0eacae8645"
meta-wetek = "(detachedfromac4d4e7):ac4d4e7013820249f4fe1be8b6bc7084fc66863f"
meta-zgemma = "(detachedfrom147bed1):147bed1fc3be730fff44bcd0357c5e2fb6a7acca"
meta-local = "master:4454187f20bbd4a8aefa1e6590aab2c27897571f"NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 3836 tasks of which 3832 didn't need to be rerun and all succeeded.
user1@Debian:~/openpli4$ ls
bitbake build Makefile meta-formuler meta-local meta-openpli meta-wetek meta-xpeedc meta-xtrend openembedded-core scripts sources
branding.conf.sample LICENSE meta-dream meta-hd meta-openembedded meta-vuplus meta-xp meta-xsarius meta-zgemma recreate_feed site.conf
user1@Debian:~/openpli4$
zeros 17 Feb 2016
I found the ready generated software from here: /openpli4/build/tmp/deploy/images/dm7020hd
user1@Debian:~/openpli4/build/tmp$ cd deploy
user1@Debian:~/openpli4/build/tmp/deploy$ ls
images ipk licenses
user1@Debian:~/openpli4/build/tmp/deploy$ cd images
user1@Debian:~/openpli4/build/tmp/deploy/images$ ls
dm7020hd
user1@Debian:~/openpli4/build/tmp/deploy/images$ cd dm7020hd
user1@Debian:~/openpli4/build/tmp/deploy/images/dm7020hd$ ls
modules--3.2-r14.19.50-dm7020hd-20160215120451.tgz openpli-enigma2-4-dm7020hd.nfi openpli-enigma2-4-dm7020hd.rootfs.ubifs secondstage-dm7020hd.bin vmlinux-dm7020hd.bin
modules-dm7020hd.tgz openpli-enigma2-4-dm7020hd.rootfs.manifest openpli-enigma2.manifest vmlinux
openpli-enigma2-4-dm7020hd.boot.jffs2 openpli-enigma2-4-dm7020hd.rootfs.ubi README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt vmlinux--3.2-r14.19.50-dm7020hd-20160215120451.bin
user1@Debian:~/openpli4/build/tmp/deploy/images/dm7020hd$
Before I'm going to change something, I want to try it out the ready genereted openpli-enigma2-4-dm7020hd.nfi file.
I have the plan with following changes:
My goal is:
1) to simplify NimManager.py
2) to solve the problem with usb hybrid tuners.
How is made it in ATV:
To solve the problem with hybrid DVB-C/T/T2 and USB tuners like
Type: DVB-C
Name: Vuplus DVB-C NIM(TT3L10)
Mode 0: DVB-C
Mode 1: DVB-T2
Name: CXD1981
Has_Outputs: yes
Mode 0: DVB-C
Mode 1: DVB-T
Opti-Combo?
that work in combination in dvb-t2 or dvb-c mode,
added to NimManager.py changes.
elif line.startswith("Mode"):
# Mode 0: DVB-C
# Mode 1: DVB-T
split = line.split(":")
split[1] = split[1].replace(' ','')
split2 = split[0].split(" ")
modes = entries[current_slot].get("multi_type", {})
modes[split2[1]] = split[1]
entries[current_slot]["multi_type"] = modes
def getNimSlotInputName(self, slotid):
# returns just "A", "B", ...
return self.nim_slots[slotid].slot_input_name
addNotifier
From enigma import iDVBFrontend
If tunerTypeChanged then in tunerTypeChanged the object 'iDVBFrontendPtr' has attribute 'changeType'
Add to Attribute object: 'iDVBFrontendPtr' the attribute 'changeType'
Add local variable 'extra_args' to config.py
New files for enigma2-master\lib\dvb
frontend.cpp - Add this to frontend.cpp bool: eDVBFrontend::changeType(int type)
frontend.h
idvb.h
def tunerTypeChanged(nimmgr, configElement):
if system == 'DVB-C':
ret = frontend.changeType(iDVBFrontend.feCable)
elif system in ('DVB-T','DVB-T2'):
ret = frontend.changeType(iDVBFrontend.feTerrestrial)
elif system in ('DVB-S','DVB-S2'):
ret = frontend.changeType(iDVBFrontend.feSatellite)
elif system == 'ATSC':
ret = frontend.changeType(iDVBFrontend.feATSC)
else:
ret = False
So it made as far as I can tell in ATV, what do you think about such an approach!?
zeros 22 Feb 2016
I ran the software created by building machine, and the results are good.