martes, 29 de enero de 2008

Compilando nuestro kernel parte1

Esta guia rapida es para aquellos que deverdad saben que estan haciendo en su distro de linux y para aquellos que desean saber un poco más...
Hay que tener en cuenta que pueden surguir algunos problemas al hacer indevidamente.... (hay que estar seguros de saber lo que se hace o aceptar las posibles perdidas que se puedan dar...)

Lo primero es bajar las fuentes del kernel (en este caso los de la seria 2.6)(tambien deve funcionar en teoria para el de la seria 2.4, dejando aun más interrogantes acerca del 2.2) los bajamos de:

http://kernel.org



que es la paguina oficial de donde se pueden descargar y donde el tio Linus los sube...
Una vez descargado las fuentes en este caso usaremos linux-2.6.24.tar.bz2 procedemos a copiarlo a: /usr/src/ (de aqui en adelante todo como super usuario) Una vez copiado se descomprime y accedemos al directoria y escogemos el modo a usar para configurarlo....
NOTA IMPORTANTISIMA TODO LO QUE SIGUE SE VA A REALIZAR DENTRO DE LA CARPETA YA DESCOMPRIMIDA DEL KERNEL

estado@mihost$: make config este metodo nos preguntara sobre que queremos instalar y como hasta que nos hartemos y probemos otro metodo de configurar

estado@mihost$: make xconfig

estado@mihost$: make menuconfig para usarlo hay que tener instalados ncurses (es el metodo que yo recomiendo)


Una vez terminado de configurar procedemos a teclear:

estado@mihost$: make mrproper
(...mucha información...)
estado@mihost$: make dep
(...mucha información...)

Y si tras esto no nos devolvio algun error seguimos con:

estado@mihost$: make clean
(...mucha información...)

Esto se encargara de limpiar algun estado guardado con anterioridad
Ahora hay que crear una imagen del kernel ya compilado esto se hace gracias a:

estado@mihost$: make bzImage
(...mucha información...)

si hasta ahorita o ha habido algun error tendriamos una imagen en:

/usr/src/linux-2.6.24/arch/i386/boot o así:
/usr/src/linux-2.6.24/arch/i386/boot/bzImage

ya con esto hacemos la instalación de los modulos si no se ha creado algun modulo nos podemos saltar esta parte (no es recomendable)

estado@mihost$: make modules
(...mucha información...)
estado@mihost$: make modules_install
(...mucha información...)

Bueno hasta aqui la primera entrega de este tutorial
en la segunda cargaremos todo y arrancaremos el kernel...
Nota hay una tercera forma de configurar el kernel y se usa por si alguna cosa extraña paso cuando ya se estaba usando el kernel compilado (por uno mismo) y ah fallado de alguna forma...

estado@mihost$: make oldconfig
(...mucha información...)

esta hara que el kernel quede configurado como se encontraba con anterioridad...

domingo, 27 de enero de 2008

KDE4


KDE4
KDE en lo personal es el mejor escritorio que existe... y ahora con su versión 4 que esta basada en las ya conocidas QT4... y con esto han corrido rumores hacerca de que gracias ah ello pordra tenerse un KDE en window$ y/o MAC... Pero si lo analizamos en un sistema como window$ este estaria corriendo en segundo plano pues al parecer el escritorio predeterminado no se puede desactivar... en lo personal creo que seria un mal uso para tal escritorio(KDE4 ) pero bueno a cada quien sus gustos...
Las nuevas ventajas son muchas pero las más destacadas son:

Más rápido y con un uso más eficiente de la memoria, gracias a la sustancial mejora en velocidad y eficiencia de Qt 4.x y la mejora interna de las propias bibliotecas de KDE.
Un nuevo tema de iconos y estilos visuales
Una nueva API para redes y dispositivos portátiles
y lo más importante(segun yo)una facilidad de portar las aplicaciones a window$ o MAC...

Bueno ahora es cuestion que lo chequen y escojan si cambian ahora o esperan a tener más informacion....

Compilar en linux fuentes .c o .cpp


Bueno lo primero...
Hay que tener el GCC, si no se tiene instalado solo basta con el conocido apt-get o simplemente instalarlo desde el cd o dvd
una vez tengamos los archivo/s .c y/o .h...
vamos a la consola (terminal) y escribimos:

gcc main.c -o main.o -c
gcc main.o -o main



esto es para un solo archivo de extencion .c (lenguaje C)
si se tiene dos .c se hace
gcc main.c -o main.o -c
gcc segundo.c -o segundo.o -c
gcc main.o segundo.o -o ejecutable

Ahora si tenemos tambien un .h se hace:
gcc main.c -o main.o -c -I .include.h
si lo anterior nos da error prueben con:
gcc main.c -o main.o -c -I ./
o
gcc main.c -o main.o -c -I .

Y ya saben para ejecuta ./ejecutable...
por ahora es solo eso asi de sencillo y recuerden que para los .cpp en vez de gcc es g++ y en vez de .c es .cpp .cp .c++ o la extencion que usen.. para compilación avanzada por ejemplo que los archivos se encuentren dentro de carpetas(directorios) solo se antepone nomcarp/main.cpp
y en el caso de los .h : -I NomCarp/nclude.h. ejemplo
gcc nomcarp/main.c -o nomcarp/main.o -c -I INCLUDES
donde INCLUDES suele contener los archivos cabecera todo esto
se hace desde fuera de las carpetas contenedoras del codigo...

En la siguiente ocasion os enseñare como crear los makefile's para que sea más facil compilar proyectos grandes...