• Hola Invitado, nos gustaría recordarte que mantener este sitio en línea conlleva unos gastos mensuales y anuales.

    Sin vuestra ayuda mensual no es posible seguir en pie, no hay mucho más que contar.

    Si quieres colaborar para que sea posible por lo menos seguir en pie como comunidad, puedes hacerlo mediante alguno de los métodos disponibles en esta página: https://www.lonasdigital.com/donaciones/

    Recuerda que si necesitas invitación para acceder al foro, puedes solicitarla en nuestro Grupo de Telegram


Compilar Imagenes Enigma 2

Javilonas

Javilonas

Trovador Loco
Developer
Registrado
10 Sep 2006
Mensajes
25.305
Reacciones
2.688
Puntos
322
Bueno chavales pues igual que hice con la de enigma 1 vamos a proceder a hacer lo mismo pero
en esta ocasión para nuestras queridas 7020 800 8000 o cualquier otra basada en enigma 2

antes de nada recuerda que si vas a copiar este manual en tu foro,blog,etc.. recuerda pedir permiso y colocar los créditos como dicta nuestra licencia de Creative Commons BY-NC-SA

1834d1289207823-compilar-imagenes-enigma-1-logo.jpg




Empezamos por lo necesario, para esto igual que hicimos para enigma 1pero en este caso lleva algunas librerías mas,

git
git-buildpackage
zlib1g-dev
libc6-dev
gcc
g++
make
cvs
subversion
perl
python
python-dev
python-psyco
ccache
patch
m4
sed
bison
wget
bzip2
gawk
curl
sharutils
coreutils
docbook
openjade
quilt
flex
libmpfr-dev
libpcre3-dev
unzip
ssh
gettext
texinfo
texi2html
tar
ncurses-bin
libncurses5-dev
pkg-config
fakeroot
libboost-dev
automake
autoconf
libpng12-dev

Para instalarlas todas de golpe ve a un terminal y escribe en el (ojo uso ubuntu 10.10)

Código:
sudo apt-get install git git-buildpackage zlib1g-dev libc6-dev gcc g++ make cvs subversion perl python python-dev python-psyco ccache patch m4   sed bison wget bzip2 gawk curl sharutils coreutils docbook openjade quilt flex libmpfr-dev libpcre3-dev unzip ssh gettext texinfo texi2html tar ncurses-bin libncurses5-dev pkg-config fakeroot libboost-dev automake autoconf libpng12-dev
Con este comando tendrás instalado todo lo necesario para poder empezar a compilar imagenes de enigma 2 bajo el código fuente original de opendreambox

Create un archivo llamado toolchecker.sh con este contenido:

Código:
#! /bin/bash

CUT=`which cut`
GREP=`which grep`

echo "# Comprobar librerias"
echo "# Sitio Oficial http://www.lonasdigital.com"

### cvs ###
CVS=`which cvs`
if ( test -e $CVS ) then
    echo "cvs:                      "`$CVS --version | $GREP Concurrent | $CUT -f5 -d " "`
    else
    echo -e "\033[37;41mcvs nicht installiert\033[37;40m"
fi;

### autoconf >= 2.57a ###
AUTOCONF=`which autoconf`
if ( test -e $AUTOCONF ) then
    echo "autoconf >= 2.57a:        "`$AUTOCONF --version | $GREP "autoconf " | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mautoconf nicht installiert\033[37;40m"
fi;

### automake >= 1.7 ###
AUTOMAKE=`which automake`
if ( test -e  $AUTOMAKE ) then
    echo "automake >= 1.8:          "`$AUTOMAKE --version | $GREP "automake " | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mautomake nicht installiert\033[37;40m"
fi;

### libtool >= 1.4.2 ###
LIBTOOL=`which libtool`
if ( test -e $LIBTOOL ) then
    echo "libtool >= 1.4.2:         "`$LIBTOOL --version | $GREP "libtool)" | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mlibtool nicht installiert\033[37;40m"
fi;

### gettext >= 0.12.1 ###
GETTEXT=`which gettext`
if ( test -e $GETTEXT ) then
    echo "gettext >= 0.12.1:        "`$GETTEXT --version | $GREP gettext | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mgettext nicht installiert\033[37;40m"
fi;

### make >= 3.79 ###
MAKE=`which make`
if ( test -e $MAKE ) then
    echo "make >= 3.79:             "`$MAKE --version | $GREP Make | $CUT -f3 -d " "`
    else
    echo -e "\033[37;41mmake nicht installiert\033[37;40m"
fi;

### makeinfo (texinfo) ###
MAKEINFO=`which makeinfo`
if ( test -e $MAKEINFO ) then
    echo "makeinfo:                 "`$MAKEINFO --version | $GREP makeinfo | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mmakeinfo nicht installiert\033[37;40m"
fi;

### tar ###
TAR=`which tar`
if ( test -e $TAR ) then
    echo "tar:                      "`$TAR --version | $GREP tar | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mtar nicht installiert\033[37;40m"
fi;

### bunzip2 (bzip2) ###
BUNZIP2=`which bunzip2`
if ( test -e $BUNZIP2 ) then
    echo "bunzip2:                  "`bunzip2 --help 2> btmp; $GREP Version < btmp | $CUT -c 50-54; rm btmp`
    else
    echo -e "\033[37;41mbunzip2 nicht installiert\033[37;40m"
fi;

### gunzip (gzip) ###
GUNZIP=`which gunzip`
if ( test -e $GUNZIP ) then
    echo "gunzip:                   "`$GUNZIP --version | $GREP gunzip | $CUT -f2 -d " "`
    else
    echo -e "\033[37;41mgunzip nicht installiert\033[37;40m"
fi;

### patch ###
PATCH=`which patch`
if ( test -e $PATCH ) then
    echo "patch:                    "`$PATCH --version | $GREP "patch " | $CUT -f2 -d " "`
    else
    echo -e "\033[37;41mpatch nicht installiert\033[37;40m"
fi;

### infocmp (ncurses-bin / ncurses-devel) ###
INFOCMP=`which infocmp`
if ( test -e $INFOCMP ) then
    echo "infocmp:                  "`$INFOCMP -V | $GREP ncurses | $CUT -f2 -d " "`
    else
    echo -e "\033[37;41minfocmp nicht installiert\033[37;40m"
fi;

### gcc 2.95 or >= 3.0 ###
GCC=`which gcc`
if ( test -e $GCC ) then
    echo "gcc 2.95 or >= 3.0:       "`$GCC --version | $GREP gcc | $CUT -f3 -d " "`
    else
    echo -e "\033[37;41mgcc nicht installiert\033[37;40m"
fi;

### g++ 2.95 or >= 3.0 ###
CCC=`which g++`
if ( test -e $CCC ) then
    echo "g++ 2.95 or >= 3.0:       "`$CCC --version | $GREP g++ | $CUT -f3 -d " "`
    else
    echo -e "\033[37;41mg++ nicht installiert\033[37;40m"
fi;

### flex ###
FLEX=`which flex`
if ( test -e $FLEX ) then
    echo "flex:                     "`$FLEX --version | $GREP flex | $CUT -f2 -d " "`
    else
    echo -e "\033[37;41mflex nicht installiert\033[37;40m"
fi;

### bison ###
BISON=`which bison`
if ( test -e $BISON ) then
    echo "bison:                    "`$BISON --version | $GREP Bison | $CUT -f4 -d " "`
    else
    echo -e "\033[37;41mbison nicht installiert\033[37;40m"
fi;

### pkg-config ###
PKGCONFIG=`which pkg-config`
if ( test -e $PKGCONFIG ) then
    echo "pkg-config:               "`$PKGCONFIG --version | $GREP .`
    else
    echo -e "\033[37;41mpkg-config nicht installiert\033[37;40m"
fi;

### wget ###
WGET=`which wget`
if ( test -e $WGET ) then
    echo "wget:                     "`$WGET --version | $GREP Wget | $CUT -f3 -d " "`
    else
    echo -e "\033[37;41wget nicht installiert\033[37;40m"
fi;

echo ""
echo
Luego ejecútalo colocándote por terminal en la carpeta donde lo tengas y escribes ./toolchecker.sh y pulsas enter, el te dirá si los tienes todos instalados o si te falta alguno,

ahora antes de continuar vamos a hacer unas comprobaciones para asegurarnos de que lo tenemos todo como debe de ser,

Entra este comando en el terminal :
Código:
[B]ls -la /bin/sh[/B]
si este te dio como resultado /bin/sh -> dash es que no vamos bien..... así que ¿como solucionarlo ahora? pues muy facil entra en el terminal esto:

Código:
sudo dpkg-reconfigure dash
asegurate de que en la pantalla que te salga seleccionas NO, es decir te dara a elegir entre si o no pues elijes que no jejeje,

ahora volvemos a hacer de nuevo
Código:
[B]ls -la /bin/sh[/B]
y ahora nos dara un bonito /bin/sh -> bash jejeje así que por aqui otra cosita mas resuelta,

ahora una vez corregido esto volvemos a meterle de nuevo el comando
Código:
sudo apt-get install git git-buildpackage zlib1g-dev libc6-dev gcc  g++ make cvs subversion perl python python-dev python-psyco ccache  patch m4   sed bison wget bzip2 gawk curl sharutils coreutils docbook  openjade quilt flex libmpfr-dev libpcre3-dev unzip ssh gettext texinfo  texi2html tar ncurses-bin libncurses5-dev pkg-config fakeroot  libboost-dev automake autoconf libpng12-dev
por si necesitaramos instalar algo mas y si esta todo correcto pues empezamos con la faena.....

Pues bien una vez hecho esto nos descargamos también el monotone y el bitbake pero para que no tengamos problemas antes actualiza la librería libsqlite3 http://ftp.es.debian.org/debian/pool/main/s/sqlite3/libsqlite3-0_3.7.3-1_i386.deb

te lo descargas y lo actualizas y si no la tenias lo instalas, despues de esto descargas el monotone http://ftp.es.debian.org/debian/pool/main/m/monotone/monotone_0.48-3_i386.deb

puede que a cada persona le pida alguna librería diferente que le falte si esto es así aqui teneis todas las que este necesita: Debian -- Details of package monotone in sid

y luego instalamos el bitbake yo no se vosotros que repos teneis instalados pero yo lo instalo desde el terminal con un simple

Código:
sudo apt-get install bitbake
una vez instalado todo esto empezamos a prepararnos para ejecutar el makefile,
vamos a crear la carpeta en donde va a estar todo el cogollo metio jejeje
Código:
mkdir dream
luego entramos dentro de este directorio por terminal

Código:
cd dream
Tener una cosa presente, tenemos 3 makefiles pero los que nos interesan son el estable (1.5) y el experimental (1.6)
version 1.5 (estable)
version 1.6 (nueva)

ahora descargate el makefile para Opendreambox de esta dirección: http://git.opendreambox.org/?p=obi/makefile-opendreambox.git;a=blob_plain;f=Makefile-opendreambox

para descargar la version estable es decir la 1.5 descarga este: http://git.opendreambox.org/?p=obi/....git;a=blob_plain;f=Makefile-opendreambox-1.5

Para descargarte el makefile para Opendreambox 1.6 es desde esta dirección: http://git.opendreambox.org/?p=obi/....git;a=blob_plain;f=Makefile-opendreambox-1.6

Yo recomiendo la experimental es decir la 1.6 que es la mas moderna y por ende tendrá mas características y mejor compatibilidad con el tdt usb,

le das a guardar como y así lo puedes bajar xD

una vez bajado lo metemos en la carpeta creada (dream) con nombre Makefile-opendreambox si nos descargamos el normal y Makefile-opendreambox-1.5 para el estable y Makefile-opendreambox-1.6 si nos descargamos el nuevo y lo editamos al gusto de el consumidor jejeje yo por ejemplo para la 800 en el normal le cambio esto:

OJO ESTO ES SOLO UN EJEMPLO DE EL MAKEFILE VIEJO NO ES VALIDO

Código:
#!/usr/bin/make -f
#
#  Makefile-opendreambox v0.4.7 (2010-10-11)
#

# Note: You can override all variables by storing them
# in an external file called "build.conf".
-include build.conf

# target platform: dm500hd, dm500plus, dm600pvr, dm7020, dm7025, dm800, dm8000
MACHINE ?= dm800

# for a list of some other repositories have
# a look at http://git.opendreambox.org/
GIT_URL ?= git://git.opendreambox.org/git/openembedded

# in case you want to send pull requests or generate patches
GIT_AUTHOR_NAME ?= lonas
GIT_AUTHOR_EMAIL ?= admin@lonasdigital.com

# set this to the number of CPU cores to use for parallel build
NUM_THREADS ?= 1

# Uncomment this if you want to use only one Git repository
# for all platforms.
#SINGLE_REPOSITORY ?= 1

# Uncomment this if you're upgrading an installation
# from Monotone. This changes the directory layout
# to the old version without shared directories.
#UPGRADE_FROM_MONOTONE ?= 1

# you should not need to change anything below
BB_URL ?= git://git.opendreambox.org/git/bitbake
BB_BRANCH ?= 1.8-dream

GIT = git
GIT_BRANCH = opendreambox

PWD := $(shell pwd)

ifeq ($(UPGRADE_FROM_MONOTONE),1)
OE_BASE = $(PWD)
else
OE_BASE = $(PWD)/$(MACHINE)
endif

ifeq ($(SINGLE_REPOSITORY),1)
GIT_DIR = $(PWD)/openembedded
else
GIT_DIR = $(OE_BASE)/openembedded
endif

ifeq ($(findstring $(MACHINE),dm500plus dm600pvr dm7020),$(MACHINE))
ARCH = powerpc
else
ARCH = mipsel
endif

all: initialize
    @echo
    @echo "Openembedded for the Dreambox environment has been initialized"
    @echo "properly. Now you can either:"
    @echo
    @echo "  - make the 'image'-target to build an image, or"
    @echo "  - go into $(MACHINE)/build/, source env.source and start on your own!"
    @echo

bb: bb/.git

bb/.git:
    @if [ -e bb/.svn ]; then \
        echo "BitBake needs to be updated. Please remove the \"bb\" directory manually!"; \
        exit 1; \
    fi
    $(GIT) clone -n $(BB_URL) bb
    cd bb && ( \
        if [ -n "$(GIT_AUTHOR_EMAIL)" ]; then git config user.email "$(GIT_AUTHOR_EMAIL)"; fi; \
        if [ -n "$(GIT_AUTHOR_NAME)" ]; then git config user.name "$(GIT_AUTHOR_NAME)"; fi; \
        $(GIT) branch --track $(BB_BRANCH) origin/$(BB_BRANCH) || true; \
        $(GIT) checkout -f $(BB_BRANCH) \
    )

bb-update: bb/.git
    cd bb && $(GIT) pull origin $(BB_BRANCH)

.PHONY: bb-update image initialize openembedded-update openembedded-update-all

image: bb-update initialize openembedded-update
    cd $(OE_BASE)/build; . ./env.source; bitbake -k dreambox-image

initialize: $(OE_BASE)/cache sources $(OE_BASE)/build $(OE_BASE)/build/conf \
    $(OE_BASE)/build/tmp $(GIT_DIR) $(OE_BASE)/build/conf/local.conf \
    $(OE_BASE)/build/env.source bb

openembedded-update: $(GIT_DIR)
    cd $(GIT_DIR) && $(GIT) pull origin $(GIT_BRANCH)

openembedded-update-all:
    @for dir in dm*/openembedded; do \
        echo "running $(GIT) pull origin $(GIT_BRANCH) in $$dir"; \
        cd $$dir && $(GIT) pull origin $(GIT_BRANCH) && cd -; \
    done


$(OE_BASE)/build $(OE_BASE)/build/conf $(OE_BASE)/build/tmp $(OE_BASE)/cache sources:
    mkdir -p $@

$(OE_BASE)/build/conf/local.conf:
    echo 'DL_DIR = "$(PWD)/sources"' > $@
    echo 'OE_BASE = "$(OE_BASE)"' >> $@
    echo 'BBFILES = "$(GIT_DIR)/recipes/*/*.bb"' >> $@
    echo 'PREFERRED_PROVIDERS += " virtual/$${TARGET_PREFIX}gcc-initial:gcc-cross-initial"' >> $@
    echo 'PREFERRED_PROVIDERS += " virtual/$${TARGET_PREFIX}gcc:gcc-cross"' >> $@
    echo 'PREFERRED_PROVIDERS += " virtual/$${TARGET_PREFIX}g++:gcc-cross"' >> $@
    echo 'MACHINE = "$(MACHINE)"' >> $@
    echo 'TARGET_OS = "linux"' >> $@
    echo 'DISTRO = "opendreambox"' >> $@
    echo 'CACHE = "$(OE_BASE)/cache/oe-cache.$${USER}"' >> $@
    echo 'BB_NUMBER_THREADS = "$(NUM_THREADS)"' >> $@
    echo 'CVS_TARBALL_STASH = "http://dreamboxupdate.com/sources-mirror/"' >> $@
    echo 'TOPDIR = "$${OE_BASE}/build"' >> $@
    echo 'IMAGE_KEEPROOTFS = "0"' >> $@

$(OE_BASE)/build/env.source:
    echo 'OE_BASE=$(OE_BASE)' > $@
    echo 'export BBPATH="$(GIT_DIR)/:$(PWD)/bb/:$${OE_BASE}/build/"' >> $@
    echo 'PATH=$(PWD)/bb/bin:$${OE_BASE}/build/tmp/cross/$(ARCH)/bin:$${PATH}' >> $@
    echo 'export PATH' >> $@
    echo 'export LD_LIBRARY_PATH=' >> $@
    echo 'export LANG=C' >> $@
    cat $@

$(GIT_DIR): $(GIT_DIR)/.git

$(GIT_DIR)/.git:
    @if [ -d $(GIT_DIR)/_MTN ]; then echo "Please remove your old monotone repository from $(GIT_DIR)!"; exit 1; fi
    $(GIT) clone -n $(GIT_URL) $(GIT_DIR)
    cd $(GIT_DIR) && ( \
        if [ -n "$(GIT_AUTHOR_EMAIL)" ]; then git config user.email "$(GIT_AUTHOR_EMAIL)"; fi; \
        if [ -n "$(GIT_AUTHOR_NAME)" ]; then git config user.name "$(GIT_AUTHOR_NAME)"; fi; \
        $(GIT) branch --track $(GIT_BRANCH) origin/$(GIT_BRANCH) || true; \
        $(GIT) checkout -f $(GIT_BRANCH) \
    )
Con esto ya tenéis un ejemplo jejejeje mas que aplicable, así que si ya lo teneis editado y colocado en su correspondiente directorio vamos a darle caña,
si es el normal es así:
Código:
make -f Makefile-opendreambox image
si es el estable es así:
Código:
make -f Makefile-opendreambox-1.5 image
si es el 1.6 es así:
Código:
make -f Makefile-opendreambox-1.6 image
Tened en cuenta que hay 3 diferentes:
git.opendreambox.org Git - obi/makefile-opendreambox.git/commit

Makefile-opendreambox
Makefile-opendreambox-1.5 (estable)
Makefile-opendreambox-1.6 (versión nueva)

yo particularmente suelo usar el 1.6 aunque el ejemplo que os puse mas arriba es antiguo ya que es para el normal.


pues con esto ya solo nos queda esperar a que termine de compilarse nuestra querida imagen jejeje y esto puede tardar unas 4/5 horas depende de la makina que tengais jejeje y la potencia de esta así como la conexion de banda ancha que tengais.

Cualquier cosita por aqui me teneis, recordar que este manual está creado exclusivamente para www.lonasdigital.com y está bajo licencia de Creative Commons BY-NC-SA por tanto respetala,

Este manual puede ser modificado sin previo aviso por su autor (yo lonas) para añadir mas información o cambios a el mismo

Saludos
 
interesante tema
 
es muy interesante ,intentaremossss,ejjejj
 
pues yo tengo un problema alo hora de hacer esto

make -f Makefile-opendreambox image

me dice esto al consola




kevin@kevin-G41M-ES2L:~/dream$ make -f Makefile-opendreambox image
Makefile-opendreambox:61: *** falta un separador. Alto.


alguna sugenrecia que ago mal saludos lonas u gran manual
 
ya esta esta comenzando a compilar la imagen lo que se ve yo cpie tu text de opend rembox i no med ejava solo cambie por dm800 mi elmai i mi nombre i ya esta jejeje aver que tal sale engo una duda


cuand acave de compilar la imagen

como se le mete el boot a la imagen o ya lo agrega ella el boot ya me direis un saludo gracias
 
instalaste todas las librerias de el principio? sin que te diera ningún error?

sobre todo mira de que te instalara el automake y gcc,

También puede ser que te pasara si copiaste y pegaste el texto de el makefile en vez de bajarlo directamente, tiene pinta de ser algo de esto.

Intenta lo que te digo y si no rula prueba como ultimo a hacerle un make image y dime que pasa
 
ya esta esta comenzando a compilar la imagen lo que se ve yo cpie tu text de opend rembox i no med ejava solo cambie por dm800 mi elmai i mi nombre i ya esta jejeje aver que tal sale engo una duda


cuand acave de compilar la imagen

como se le mete el boot a la imagen o ya lo agrega ella el boot ya me diréis un saludo gracias

de que boot hablas compañero? esto es una imagen original creada por ti, es decir es para dream originales luego si la quieres usar tu en tu deco clon tienes que cargarle el boot actual que es el 76C pero que quede claro que esta imagen que crees será compilada y creada por ti por lo tanto tu y solo tu sabrás lo que le has metido jejejeje también puedes parchearlas para que la dream no detecte que es un clon,etc... pero eso ya cada uno que haga con ella lo que quiera.....

Recordar que estas imágenes las contruis vosotros desde 0 es decir que no traen soporte de emuladora,blue panel ni nada por el estilo, eso os lo tenéis que currar vosotros mismos.

Saludos
 
pues tengo este problema ahora tio mira


Resolving deltas: 100% (207266/207266), done.
cd /home/kevin/dream/dm8000/openembedded && ( \
if [ -n "" ]; then git config user.email ""; fi; \
if [ -n "" ]; then git config user.name ""; fi; \
git branch --track opendreambox origin/opendreambox || true; \
git checkout -f opendreambox \
)
fatal: Not a valid object name: 'origin/opendreambox'.
error: pathspec 'opendreambox' did not match any file(s) known to git.
make: *** [/home/kevin/dream/dm8000/openembedded/.git] Error 1


que ago mal lonas
 
no has puesto nada en el email y en el nombre,

edita el Makefile y ponle una almoadila # delante de esas dos lineas de manera que quede así:

# in case you want to send pull requests or generate patches
#GIT_AUTHOR_NAME ?=
#GIT_AUTHOR_EMAIL ?=

y luego vuelve a hacer de nuevo
make -f Makefile-opendreambox image
 
hola antes tenia ya las almuadills i me sigue aciendoe ste error


cd /home/kevin/dream/dm8000/openembedded && ( \
if [ -n "" ]; then git config user.email ""; fi; \
if [ -n "" ]; then git config user.name ""; fi; \
git branch --track opendreambox origin/opendreambox || true; \
git checkout -f opendreambox \
)
fatal: Not a valid object name: 'origin/opendreambox'.
error: pathspec 'opendreambox' did not match any file(s) known to git.
make: *** [/home/kevin/dream/dm8000/openembedded/.git] Error 1


mira lo tengo asi puesto



#!/usr/bin/make -f
#
# Makefile-opendreambox v0.4.7 (2010-10-11)
#

# Note: You can override all variables by storing them
# in an external file called "build.conf".
-include build.conf

# target platform: dm500hd, dm500plus, dm600pvr, dm7020, dm7025, dm800, dm8000
MACHINE ?= dm8000

# for a list of some other repositories have
# a look at git.opendreambox.org Git
GIT_URL ?= git://git.opendreambox.org/git/openembedded

# in case you want to send pull requests or generate patches
#GIT_AUTHOR_NAME ?=
#GIT_AUTHOR_EMAIL ?=

# set this to the number of CPU cores to use for parallel build
NUM_THREADS ?= 1

# Uncomment this if you want to use only one Git repository
# for all platforms.
#SINGLE_REPOSITORY ?= 1

# Uncomment this if you're upgrading an installation
# from Monotone. This changes the directory layout
# to the old version without shared directories.
#UPGRADE_FROM_MONOTONE ?= 1

# you should not need to change anything below
BB_URL ?= git://git.opendreambox.org/git/bitbake
BB_BRANCH ?= 1.8-dream

GIT = git
GIT_BRANCH = opendreambox

PWD := $(shell pwd)

ifeq ($(UPGRADE_FROM_MONOTONE),1)
OE_BASE = $(PWD)
else
OE_BASE = $(PWD)/$(MACHINE)
endif

ifeq ($(SINGLE_REPOSITORY),1)
GIT_DIR = $(PWD)/openembedded
else
GIT_DIR = $(OE_BASE)/openembedded
endif

ifeq ($(findstring $(MACHINE),dm500plus dm600pvr dm7020),$(MACHINE))
ARCH = powerpc
else
ARCH = mipsel
endif

all: initialize
@echo
@echo "Openembedded for the Dreambox environment has been initialized"
@echo "properly. Now you can either:"
@echo
@echo " - make the 'image'-target to build an image, or"
@echo " - go into $(MACHINE)/build/, source env.source and start on your own!"
@echo

bb: bb/.git

bb/.git:
@if [ -e bb/.svn ]; then \
echo "BitBake needs to be updated. Please remove the \"bb\" directory manually!"; \
exit 1; \
fi
$(GIT) clone -n $(BB_URL) bb
cd bb && ( \
if [ -n "$(GIT_AUTHOR_EMAIL)" ]; then git config user.email "$(GIT_AUTHOR_EMAIL)"; fi; \
if [ -n "$(GIT_AUTHOR_NAME)" ]; then git config user.name "$(GIT_AUTHOR_NAME)"; fi; \
$(GIT) branch --track $(BB_BRANCH) origin/$(BB_BRANCH) || true; \
$(GIT) checkout -f $(BB_BRANCH) \
)

bb-update: bb/.git
cd bb && $(GIT) pull origin $(BB_BRANCH)

.PHONY: bb-update image initialize openembedded-update openembedded-update-all

image: bb-update initialize openembedded-update
cd $(OE_BASE)/build; . ./env.source; bitbake -k dreambox-image

initialize: $(OE_BASE)/cache sources $(OE_BASE)/build $(OE_BASE)/build/conf \
$(OE_BASE)/build/tmp $(GIT_DIR) $(OE_BASE)/build/conf/local.conf \
$(OE_BASE)/build/env.source bb

openembedded-update: $(GIT_DIR)
cd $(GIT_DIR) && $(GIT) pull origin $(GIT_BRANCH)

openembedded-update-all:
@for dir in dm*/openembedded; do \
echo "running $(GIT) pull origin $(GIT_BRANCH) in $$dir"; \
cd $$dir && $(GIT) pull origin $(GIT_BRANCH) && cd -; \
done


$(OE_BASE)/build $(OE_BASE)/build/conf $(OE_BASE)/build/tmp $(OE_BASE)/cache sources:
mkdir -p $@

$(OE_BASE)/build/conf/local.conf:
echo 'DL_DIR = "$(PWD)/sources"' > $@
echo 'OE_BASE = "$(OE_BASE)"' >> $@
echo 'BBFILES = "$(GIT_DIR)/recipes/*/*.bb"' >> $@
echo 'PREFERRED_PROVIDERS += " virtual/$${TARGET_PREFIX}gcc-initial:gcc-cross-initial"' >> $@
echo 'PREFERRED_PROVIDERS += " virtual/$${TARGET_PREFIX}gcc:gcc-cross"' >> $@
echo 'PREFERRED_PROVIDERS += " virtual/$${TARGET_PREFIX}g++:gcc-cross"' >> $@
echo 'MACHINE = "$(MACHINE)"' >> $@
echo 'TARGET_OS = "linux"' >> $@
echo 'DISTRO = "opendreambox"' >> $@
echo 'CACHE = "$(OE_BASE)/cache/oe-cache.$${USER}"' >> $@
echo 'BB_NUMBER_THREADS = "$(NUM_THREADS)"' >> $@
echo 'CVS_TARBALL_STASH = "http://dreamboxupdate.com/sources-mirror/"' >> $@
echo 'TOPDIR = "$${OE_BASE}/build"' >> $@
echo 'IMAGE_KEEPROOTFS = "0"' >> $@

$(OE_BASE)/build/env.source:
echo 'OE_BASE=$(OE_BASE)' > $@
echo 'export BBPATH="$(GIT_DIR)/:$(PWD)/bb/:$${OE_BASE}/build/"' >> $@
echo 'PATH=$(PWD)/bb/bin:$${OE_BASE}/build/tmp/cross/$(ARCH)/bin:$${PATH}' >> $@
echo 'export PATH' >> $@
echo 'export LD_LIBRARY_PATH=' >> $@
echo 'export LANG=C' >> $@
cat $@

$(GIT_DIR): $(GIT_DIR)/.git

$(GIT_DIR)/.git:
@if [ -d $(GIT_DIR)/_MTN ]; then echo "Please remove your old monotone repository from $(GIT_DIR)!"; exit 1; fi
$(GIT) clone -n $(GIT_URL) $(GIT_DIR)
cd $(GIT_DIR) && ( \
if [ -n "$(GIT_AUTHOR_EMAIL)" ]; then git config user.email "$(GIT_AUTHOR_EMAIL)"; fi; \
if [ -n "$(GIT_AUTHOR_NAME)" ]; then git config user.name "$(GIT_AUTHOR_NAME)"; fi; \
$(GIT) branch --track $(GIT_BRANCH) origin/$(GIT_BRANCH) || true; \
$(GIT) checkout -f $(GIT_BRANCH) \
)

aver qu etengo mal lo e intentado ya 3 veces i el mismo erro perdona parezco un inutil tio
 
nada tio lo dejo por inposibñe ahora le puse nombre i e miso error tio no se que ago mal


mira el error
cd /home/kevin/dream/dm8000/openembedded && ( \
if [ -n "larada14@gmail.com" ]; then git config user.email "larada14@gmail.com"; fi; \
if [ -n "soldado" ]; then git config user.name "soldado"; fi; \
git branch --track opendreambox origin/opendreambox || true; \
git checkout -f opendreambox \
)
fatal: Not a valid object name: 'origin/opendreambox'.
error: pathspec 'opendreambox' did not match any file(s) known to git.
make: *** [/home/kevin/dream/dm8000/openembedded/.git] Error 1
 
voy a actualizar el manual con nuevas librerías no sea que me dejara alguna atras,

dame 10 minutos que lo actualice no sea que se me quedara algo atras por que yo el código ya lo tengo compilado de hace tiempo y puede que se me pasara algo,

10 minutos.

saludos
 
buenas con ste e avanzado algo mas pero me ice esto ahora

WARNING: Using dash as /bin/sh causes various subtle build problems, please consider using bash instead.
NOTE: Psyco JIT Compiler (Psyco - Home Page) not available. Install it to increase

alguna sugerencia

con ese erro que te comento pasar algo conla imagen o la pongo hacer de nuevo ya me dices i peerdona las moestias de tantas preguntas tio
 
Última edición:
Ya está actualizado, le he puesto mas cositas y actualizado completamente el manual, ahora tiene todas las librerías necesarias y los 3 makefiles, pero instalaros el ultimo el 1.6,

comprobarlo con estos cambios que le puse y me contáis, revisalo todo de nuevo que le he añadido cosas que pueden solucionarte los errores y así evitamos que estos se nos den.

También recordaros que si solucionáis los errores que no se os olvide postear como se soluciono para que otro que venga detrás le sirva.

Saludos
 
voy a crear otro hilo en el que seguro os será mas fácil para los que no tengáis ni idea de compilar y demás con el código fuente de el sif team que este igual os da menos problemas.

Saludos y en unos minutos lo tenéis en otro hilo por si queréis probar mejor con el otro.
 
yo por ahora no mes esta dando problemas por ahora aver sia cava i te cometare pero seguro que pruev hacerlo tambien con el otro post jje

por cierta esta imagen que estamoa creando los script de las emus como los teneos que hacer tipo gemni navilo etc.. o como queramos saludos ya me diras
 
lonas ya tengo la iamgen ahora estoy tuneando la iamgen ami gusto i estoy cvon manuales para agragr pluyisn etc..

lo que pasa lo que me faltar es esperar a lo del hadware para clones saves si estan trabajando con los nuevos drivers de drem multimedia para los clones ya me diras un saludo tio i gracias
 
mientras no saquen una actualización para las sim no podremos hacer nada, luego miraré por si ya estuviera el ssl76d
 
pero y uso sim ferrai i hay esta en su web

DM8000SSL76FF3

saludos
 

Temas similares

P
Respuestas
4
Visitas
2K
pop1234
P
Javilonas
Respuestas
40
Visitas
15K
tabasco
tabasco
G
Respuestas
7
Visitas
1K
paco-50
P
K
Respuestas
84
Visitas
4K
Javilonas
Javilonas
Atrás
Arriba