OpenEmbedded en Slackware 14.1
Pues bien, la última vez que instale openembedded fue hace eones y las cosas han cambiado bastante, me encontré con que por fin ordenaron la plataforma y tienen un core con lo esencial y las aplicaciones satélites para ir sazonando las diversas distros que pueden salir de ahí.
luego el setup de las variables de ambiente:
para que, finalmente lanzamos nuestra línea de comando que dejara transpirando a mi procesador:
YYYY... ERROR !!! O_o
Que mierda !! si seguí las instrucciones al pie de la letra !!!
No podia ser tan facil con slackware...
Nunca....
y recordé que la vez anterior había configurado unas variables de ambiente... pero no recuerdo cuales eran, solo recuerdo que comenzaban con BB y algo, gran ayuda !!, asi que comenze a abrir los archivos de configuración.... un archivo, otro archivo, luego otro... y asi... por unas 2 horas... inutil... pero no tanto, al menos tengo una idea de la estructura de los archivos de configuración, y pincelazo autodidacta de cómo funciona bitbake, pero no me resuelve el problema.
Luego de mi segunda redbull, encontre una pagina que se me hacia familiar, tenía las variables que anteriormente había configurado en mi maquina !!, ehhh !!!
Pero, como no me gustan las cosas a medias, decidí que estas variables de ambiente deben estar configuradas desde el inicio, al entrar a la sesión de mi flamante linux recién re-re-re-reinstalado.
Asi que comencé a buscar el famoso .xinitrc para resetearlas ahí... pero OJO... tiene una x al inicio, es decir que estas se ejecutan cuando entro al ambiente gráfico... y yo queria algo mas pro. Siempre había colocado indecorosamente algunas inicializaciones de variables ahi, de flojo, por no hacerlo bien, pero ya no estoy para esas cosas asi que me dedique a buscar con el todo sapiente google la secuencia de archivos que se leen al momento de entrar a sesion.
Sucede que al arrancar una sesión, el sistema operativo lee el /etc/profile, para luego intentar ejecutar los archivos ~/.bash_profile, ~/.bash_login o ~/.profile, en ese orden, y ejecutando el primero que encuentre (importante a considerar).
En dicho sitio se sugiere que se llame a ~/.bashrc desde ~/.bash_profile, y que inicialize las variables ahi. Ademas de dar una serie de razones bastante buenas de hacerlo se nota que el tipo que escribio el original sabia de lo que hablaba asi que sin cuestionar mucho puse manos a la obra. Digo el tipo original por que se nota la traduccion tarzaneada de algun google translate o algo similar.
Primero que nada busque la existencia de alguno de los archivos antes mencionados para no pisar alguna configuracion en uso... y nada, asi que con el camino libre, y con la recomendacion del la pagina en cuestion, cree el archivo ~/.bash_profile con la siguientes lineas:
Para luego crear el archivo ~/.bashrc con lo siguiente:
************************
alias ls='ls --color=auto'
export OEBASE=/home/jpcordovae/oe-core
export PATH=$OEBASE/bitbake/bin:$PATH
export BBPATH=$OEBASE/build:$OEBASE/openembedded
export BB_ENV_EXTRAWHITE="OEBASE"
************************
Asi que teniendo mis variables de ambiente siempre a mano y de manera correcta, me fui derechito al directorio oe-core/ para ejecutar bitbake.... yyy.... ERROR !!!
file 'conf/bitbake.conf' not found
pero como !!!, si yo se que esta ahi !!!... imposible... aer...
comencé a jugar con las versiones de bitake y de openembedded con git... las mezcle todas.... o casi todas... y nada... unas tienen mas éxito que otras...
y me di cuenta de que había otro error:
chrpath not found
y efectivamente no tenia el famoso chrpath, raro en esta distribución, pero en fin... asi que hice escala en slackbuilds.org, baje la fuente con su parche, lo compile, y lo instale... problema resuelto.
Ahora queda el problema de la version de make.
Slackware viene por defecto con el make 3.82 que esta oficialmente 'broken;, es decir, con algún cagazo que sugiere saltar inmediatamente a la version estable siguiente, en este caso, la 4.0
asi que baje la version 4.0 , la cual baje compile, e instale con las siguientes líneas de comando:
con esto, me movie a oe-core/, y dentro de build/ ejecute:
ahi tuve una respuesta mucho mas decente.... un par de errores, pero con git volvi a las condiciones iniciales recomendadas por el ejemlpo de la pagina oficial del sitio y ahora tengo corriendo 8 hebras compilando la imagen.
Espero esto ayude a alguien a no sudar tanto con openembedded, si alguien lee esto, que por favor me mande un correo a jpcordovae@gmail.com para que me cuente como le fue.
Suerte... lo que es yo, me voy a una despedida de solteros en este instante.
Buscando en el sitio oficial, nos encontramos con las siguientes instrucciones:
git clone git://git.openembedded.org/openembedded-core oe-core
cd oe-core
git clone git://git.openembedded.org/bitbake bitbake
git checkout daisy
cd bitbake
git checkout 1.22
cd ..
luego el setup de las variables de ambiente:
source ./oe-init-build-env [<build directory>]
para que, finalmente lanzamos nuestra línea de comando que dejara transpirando a mi procesador:
bitbake core-image-minimal
YYYY... ERROR !!! O_o
Que mierda !! si seguí las instrucciones al pie de la letra !!!
No podia ser tan facil con slackware...
Nunca....
y recordé que la vez anterior había configurado unas variables de ambiente... pero no recuerdo cuales eran, solo recuerdo que comenzaban con BB y algo, gran ayuda !!, asi que comenze a abrir los archivos de configuración.... un archivo, otro archivo, luego otro... y asi... por unas 2 horas... inutil... pero no tanto, al menos tengo una idea de la estructura de los archivos de configuración, y pincelazo autodidacta de cómo funciona bitbake, pero no me resuelve el problema.
Luego de mi segunda redbull, encontre una pagina que se me hacia familiar, tenía las variables que anteriormente había configurado en mi maquina !!, ehhh !!!
$ export OEBASE=/path/to/your/oe/installation$ export PATH=$OEBASE/bitbake/bin:$PATH
$ export BBPATH=$OEBASE/build:$OEBASE/openembedded
$ export BB_ENV_EXTRAWHITE="OEBASE"
Pero, como no me gustan las cosas a medias, decidí que estas variables de ambiente deben estar configuradas desde el inicio, al entrar a la sesión de mi flamante linux recién re-re-re-reinstalado.
Asi que comencé a buscar el famoso .xinitrc para resetearlas ahí... pero OJO... tiene una x al inicio, es decir que estas se ejecutan cuando entro al ambiente gráfico... y yo queria algo mas pro. Siempre había colocado indecorosamente algunas inicializaciones de variables ahi, de flojo, por no hacerlo bien, pero ya no estoy para esas cosas asi que me dedique a buscar con el todo sapiente google la secuencia de archivos que se leen al momento de entrar a sesion.
Sucede que al arrancar una sesión, el sistema operativo lee el /etc/profile, para luego intentar ejecutar los archivos ~/.bash_profile, ~/.bash_login o ~/.profile, en ese orden, y ejecutando el primero que encuentre (importante a considerar).
En dicho sitio se sugiere que se llame a ~/.bashrc desde ~/.bash_profile, y que inicialize las variables ahi. Ademas de dar una serie de razones bastante buenas de hacerlo se nota que el tipo que escribio el original sabia de lo que hablaba asi que sin cuestionar mucho puse manos a la obra. Digo el tipo original por que se nota la traduccion tarzaneada de algun google translate o algo similar.
Primero que nada busque la existencia de alguno de los archivos antes mencionados para no pisar alguna configuracion en uso... y nada, asi que con el camino libre, y con la recomendacion del la pagina en cuestion, cree el archivo ~/.bash_profile con la siguientes lineas:
if [ -f ~/.bashrc ]; then source ~/.bashrc fi
Para luego crear el archivo ~/.bashrc con lo siguiente:
************************
alias ls='ls --color=auto'
export OEBASE=/home/jpcordovae/oe-core
export PATH=$OEBASE/bitbake/bin:$PATH
export BBPATH=$OEBASE/build:$OEBASE/openembedded
export BB_ENV_EXTRAWHITE="OEBASE"
************************
Asi que teniendo mis variables de ambiente siempre a mano y de manera correcta, me fui derechito al directorio oe-core/ para ejecutar bitbake.... yyy.... ERROR !!!
file 'conf/bitbake.conf' not found
pero como !!!, si yo se que esta ahi !!!... imposible... aer...
comencé a jugar con las versiones de bitake y de openembedded con git... las mezcle todas.... o casi todas... y nada... unas tienen mas éxito que otras...
y me di cuenta de que había otro error:
Your version of make 3.82 is broken. Please revert to 3.81 or install a patched version.
aparte de este otro que había saltado alguna vez por ahí:chrpath not found
y efectivamente no tenia el famoso chrpath, raro en esta distribución, pero en fin... asi que hice escala en slackbuilds.org, baje la fuente con su parche, lo compile, y lo instale... problema resuelto.
Ahora queda el problema de la version de make.
Slackware viene por defecto con el make 3.82 que esta oficialmente 'broken;, es decir, con algún cagazo que sugiere saltar inmediatamente a la version estable siguiente, en este caso, la 4.0
asi que baje la version 4.0 , la cual baje compile, e instale con las siguientes líneas de comando:
bash-4-2$ tar xzvf make-4.0.tar.gz bash-4.2$ cd make-4.0bash-4.2$ ./configure --libdir=/usr/lib64bash-4.2$ makebash-4.2$ su --> root passwdbash-4.2$ make install
con esto, me movie a oe-core/, y dentro de build/ ejecute:
bitbake core-image-minimal
ahi tuve una respuesta mucho mas decente.... un par de errores, pero con git volvi a las condiciones iniciales recomendadas por el ejemlpo de la pagina oficial del sitio y ahora tengo corriendo 8 hebras compilando la imagen.
Espero esto ayude a alguien a no sudar tanto con openembedded, si alguien lee esto, que por favor me mande un correo a jpcordovae@gmail.com para que me cuente como le fue.
Suerte... lo que es yo, me voy a una despedida de solteros en este instante.
Comentarios
Publicar un comentario