User Tag List

Página 5 de 6 PrimerPrimer 123456 ÚltimoÚltimo
Resultados 61 al 75 de 84

Tema: Hello world

  1. #61

    Fecha de ingreso
    May 2009
    Ubicación
    Barcelona (A las afueras de)
    Mensajes
    32
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por hardyx Ver mensaje
    Si usas `sdl-config --cflags --libs` en la línea de compilación te da las librerías y los includes de SDL sin tener que poner todo el chorizo de directorios. Las comillas invertidas se ponen para obtener el resultado.
    Usa sdl-config para ver los paths que tienes configurados.
    Oh! Gracias! Ya no me acordaba del sdl-config, y siempre me había preguntado lo de las comillas invertidas. Ya lo tengo configurado aunque me costó un poco porque no tenía permisos de ejecución y modificaba el de las SDL de PC xD (lo digo por si a alguien más le pasa).
    Ya no me acordaba de lo del sdl-config porque en GNU-GCC no hace falta llamarlo, supongo que porque ya sabe las rutas donde buscar. ¿Se podría configurar el compilador de ARM para que hiciese eso? (La documentación es bastante extensa)

    Saludos.

  2. #62

    Fecha de ingreso
    Jan 2008
    Ubicación
    Madrid
    Mensajes
    4,451
    Mencionado
    14 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    87
    Agradecer Thanks Received 
    161
    Thanked in
    Agradecido 94 veces en [ARG:2 UNDEFINED] posts
    El gcc trae opciones preconfiguradas para las librerías del sistema. Pero para usar la SDL u otras hay que decirle donde buscar con los parámetros -L (path libs) y -I (path includes). También puedes usar un entorno como Codeblocks que te facilita el dar opciones al compilador, y tiene versiones para Windows, Linux y MacOS.

  3. #63

    Fecha de ingreso
    Apr 2006
    Mensajes
    44
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Buenas,

    ¿me podeis decir como habeis conseguido saltaros el error libSDL.so uses hardware FP, whereas test.wiz.gpe uses software FP?

    Yo pegandome toda la mañana y no lo saco.

    Compilo con lo siguiente:

    /opt/arm-openwiz-linux-gnu/bin/arm-openwiz-linux-gnu-gcc test.c -o test.wiz.gpe -I"/opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/include/SDL" -L/opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/lib -lSDL

    y siempre me suelta lo mismo:

    /opt/arm-openwiz-linux-gnu/bin/../lib/gcc/arm-openwiz-linux-gnu/4.2.4/../../../../arm-openwiz-linux-gnu/bin/ld: ERROR: /opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/lib/libSDL.so uses hardware FP, whereas test.wiz.gpe uses software FP
    /opt/arm-openwiz-linux-gnu/bin/../lib/gcc/arm-openwiz-linux-gnu/4.2.4/../../../../arm-openwiz-linux-gnu/bin/ld: failed to merge target specific data of file /opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/lib/libSDL.so
    collect2: ld returned 1 exit status

    A ver si me podeis ayudar porque ya no se por donde cogerlo.

    Compilo con el toolchain de linux y le he añadido las libs e includes del sdk oficial de linuz de la gp2x.
    ¿me dejo algo?

    Muchas gracias.
    Coders! Design or Resign!!! That´s the law!

    kaotiklabs.blogspot.com

  4. #64

    Fecha de ingreso
    Feb 2009
    Mensajes
    300
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por xau Ver mensaje
    Buenas,

    ¿me podeis decir como habeis conseguido saltaros el error libSDL.so uses hardware FP, whereas test.wiz.gpe uses software FP?

    Yo pegandome toda la mañana y no lo saco.

    Compilo con lo siguiente:

    /opt/arm-openwiz-linux-gnu/bin/arm-openwiz-linux-gnu-gcc test.c -o test.wiz.gpe -I"/opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/include/SDL" -L/opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/lib -lSDL

    y siempre me suelta lo mismo:

    /opt/arm-openwiz-linux-gnu/bin/../lib/gcc/arm-openwiz-linux-gnu/4.2.4/../../../../arm-openwiz-linux-gnu/bin/ld: ERROR: /opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/lib/libSDL.so uses hardware FP, whereas test.wiz.gpe uses software FP
    /opt/arm-openwiz-linux-gnu/bin/../lib/gcc/arm-openwiz-linux-gnu/4.2.4/../../../../arm-openwiz-linux-gnu/bin/ld: failed to merge target specific data of file /opt/arm-openwiz-linux-gnu/arm-openwiz-linux-gnu/lib/libSDL.so
    collect2: ld returned 1 exit status

    A ver si me podeis ayudar porque ya no se por donde cogerlo.

    Compilo con el toolchain de linux y le he añadido las libs e includes del sdk oficial de linuz de la gp2x.
    ¿me dejo algo?

    Muchas gracias.
    No te dejas nada. El kit que hay aquí esta obsoleto. Necesitas construirte una toolchain con soporte VFP. Yo ya me he hecho una (lo que ocurre es que la hice contra GLIBC2.9 en lugar de contra GLIBC2.6 y ahora tengo que ocuparme de recompilar SDL ) y va todo de muerte. Existe GRAN diferencia entre usar el VFP a no usarlo.
    Si quieres te digo como hacerte una toolchain (es fácil una vez que se sabe).

    Animo y a darle.

  5. #65

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,514
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    Una dudilla un poco offtopic que me ha surgido pensando en programar para la Wiz. Por ahí hay miles de tutoriales y cursos de C, pero no conozco ninguno que trate a fondo el tema de compiladores (enlazado de librerías, toolchains, makefiles, etc.), y es un poco difícil trastear sin saber lo mínimo. ¿Alguna web o libro que trate sobre el tema?

    Asiaaas.

  6. #66

    Fecha de ingreso
    Apr 2006
    Mensajes
    44
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por flozanot Ver mensaje
    No te dejas nada. El kit que hay aquí esta obsoleto. Necesitas construirte una toolchain con soporte VFP. Yo ya me he hecho una (lo que ocurre es que la hice contra GLIBC2.9 en lugar de contra GLIBC2.6 y ahora tengo que ocuparme de recompilar SDL ) y va todo de muerte. Existe GRAN diferencia entre usar el VFP a no usarlo.
    Si quieres te digo como hacerte una toolchain (es fácil una vez que se sabe).

    Animo y a darle.
    Pues si me puedes explicar un poco como hacer la toolchain estaria de lujo porque estoy un poco perdido.

    Me he estado mirando el tema de vfp y a pesar de que más o menos lo entiendo, lo de rehacer la toolchain me supera.
    Coders! Design or Resign!!! That´s the law!

    kaotiklabs.blogspot.com

  7. #67

    Fecha de ingreso
    Feb 2009
    Mensajes
    300
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Para hacerte el cross-compiler necesitaras:
    Un GNU C ya instalado versión 4.1.0 o superior. (Se mira con gcc -v)
    Las binutils 2.19.1
    El GCC 4.4.0
    El kernel linux (la versión 2.6.x, yo lo he probado con la 2.6.29.4)
    La GLIBC 2.9 o la GLIBC 2.6. Con la 2.9 has de recompilar, así que supongo que mejor para ti sería la 2.6 que con la que han compilado los de GPH (si mal no recuerdo).
    GLIBC-PORTS-2.9 o GLIBC-PORTS-2.6, dependiendo de si has elegido la 2.9 o la 2.6.
    Esto requiere una explicación:
    La GLIBC no existe para ARM ni para MIPS ni para nada que no sea x86, así que es necesario portarla en algunas partes. Dichas partes son el paquete GCLIB-PORTS.
    Actualmente (en la versión 2.6 supongo que no) hay fallos en los fuentes, fácilmente solucionables, que impiden compilar. Más adelante te diré como corregirlos.
    Los glibc-threads no hacen falta. No los instales porque no sirvan para nada.

    Recapitulando:
    [ ] Compilador GNU instalado version 4.1.0 o mejor.
    [ ] Las binutils 2.19.1
    [ ] El GCC 4.4.0
    [ ] El kernel linux (2.6.x, mejor la ultima version, la 2.6.29.4)
    [ ] GLIBC y GLIBC-PORTS (usa la 2.6 para no tener que recompilar nada)


    Configurando para la toochain:
    1-Crea una carpeta donde meter los sources: por ejemplo ${HOME}/toolchain/src
    2-Descomprime directamente las binutils, el gcc, la glibc y el kernel. Las glibc-ports aún no.
    3-Descomprime las glibc-ports a un directorio temporal.
    4-Crea una subcarpeta en donde descomprimiste la glibc llamada "ports"
    5-En la 2.6 aún no sé, pero en la 2.9 hay fallos en los sources que deben ser corregidos:
    glibc-2.9/nptl/sysdeps/unix/sysv/linux/lowlevellock.c
    Linea 26: #include <tls.h> [añadido]

    glibc-2.9/ports/sysdeps/arm/fpu/setjmp.S:
    Linea 37: hidden_def (__sigsetjmp) [añadido]

    Ya tienes los sources configurados.

    Ahora necesitas los guiones. Estos guiones son versiones modificadas de muchos guiones que he visto por internet y que ninguno funcionaba.

    build_1.sh:
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=<ruta absoluta a la toolchain, por ejemplo ${HOME}/toolchain>
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX} <--Esto puedes poner ${PREFIX}/sysroot (mira al final)
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin 
    mkdir -p ${PREFIX}/src
    # GNU binutils
    
    cd ${PREFIX}/src
    mkdir -p BUILD/binutils-2.19.1
    cd BUILD/binutils-2.19.1
     ../../binutils-2.19.1/configure --prefix=${PREFIX} --target=${TARGET} --with-sysroot=${SYSROOT} 2>&1 | tee configure.out
    make 2>&1 | tee make.out
    make install 2>&1 | tee -a make.out
    build_2.sh: (Actualizado)
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=/home/fernando/Desktop/prebuilt-toolchain/new/
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX}
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin 
    
    #Primer GCC
    
    cd ${PREFIX}/src
    mkdir -p BUILD/gcc-4.4.0-stage1
    cd BUILD/gcc-4.4.0-stage1
    ../../gcc-4.4.0/configure --prefix=${PREFIX} --target=${TARGET} --enable-languages=c --with-sysroot=${SYSROOT} --disable-threads --disable-libssp --disable-libgomp --disable-libmudflap --without-headers --with-newlib --enable-shared 2>&1 | tee configure.out
    make 2>&1 | tee make.out
    make install 2>&1 | tee -a make.out
    build_3.sh:
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=/home/fernando/Desktop/prebuilt-toolchain/new/
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX}
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin 
    
    # Linux Kernel Headers
    
    cd ${PREFIX}/src
    ln -sf linux-2.6.29.4 linux
    cd linux
    make menuconfig ARCH=arm
    make include/linux/version.h
    mkdir -p ${SYSROOT}/usr/include
    cp -a ${PREFIX}/src/linux/include/linux ${PREFIX}/include/linux
    cp -a ${PREFIX}/src/linux/include/asm-arm ${PREFIX}/include/asm
    cp -a ${PREFIX}/src/linux/include/asm-generic ${PREFIX}/include/asm-generic
    buid_4.sh:
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=/home/fernando/Desktop/prebuilt-toolchain/new/
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX}
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin 
    
    # Glibc headers
    
    export old_BUILD_CC=$BUILD_CC
    export old_CC=$CC
    export old_CXX=$CXX
    export old_AR=$AR
    export old_RANLIB=$RANLIB
    export old_AS=$AS
    export old_LD=$LD
    
    cd ${PREFIX}/src
    mkdir BUILD/glibc-2.9-headers
    cd BUILD/glibc-2.9-headers
    export BUILD_CC=gcc
    export CC=${CROSS_COMPILE}gcc
    export CXX=${CROSS_COMPILE}g++
    export AR=${CROSS_COMPILE}ar
    export RANLIB=${CROSS_COMPILE}ranlib
    export AS=${CROSS_COMPILE}as
    export LD=${CROSS_COMPILE}ld
    ../../glibc-2.9/configure --build=${TARGET} --prefix=${PREFIX} --target=${TARGET} --enable-add-ons=nptl,ports --with-headers=${PREFIX}/src/linux/include cross_compiling=yes 2>&1 | tee configure.out
    make cross-compiling=yes install-headers 2>&1 | tee make.out
    touch ${PREFIX}/include/gnu/stubs.h
    touch ${PREFIX}/include/bits/stdio_lim.h
    
    export BUILD_CC=$old_BUILD_CC
    export CC=$old_CC
    export CXX=$old_CXX
    export AR=$old_AR
    export RANLIB=$old_RANLIB
    export AS=$old_AS
    export LD=$old_LD
    
    export old_BUILD_CC=
    export old_CC=
    export old_CXX=
    export old_AR=
    export old_RANLIB=
    export old_AS=
    export old_LD=
    build_5.sh:
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=/home/fernando/Desktop/prebuilt-toolchain/new/
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX}
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin 
    
    # glibc
    
    export old_BUILD_CC=$BUILD_CC
    export old_CC=$CC
    export old_CXX=$CXX
    export old_AR=$AR
    export old_RANLIB=$RANLIB
    export old_AS=$AS
    export old_LD=$LD
    
    cd ${PREFIX}/src
    mkdir -p BUILD/glibc-2.9
    cd BUILD/glibc-2.9
    export BUILD_CC=gcc
    export CC=${CROSS_COMPILE}gcc
    export CXX=${CROSS_COMPILE}g++
    export AR=${CROSS_COMPILE}ar
    export RANLIB=${CROSS_COMPILE}ranlib
    export AS=${CROSS_COMPILE}as
    export LD=${CROSS_COMPILE}ld
    ../../glibc-2.9/configure --prefix=${PREFIX} --build=${TARGET} --target=${TARGET} --enable-add-ons=nptl,ports --with-binutils=${PREFIX}/${TARGET}/bin --with-headers=${PREFIX}/include cross_compiling=yes libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes libc_cv_gnu89_inline=yes 2>&1 | tee configure.out
    make cross_compiling=yes 2>&1 | tee make.out
    make install
    
    export BUILD_CC=$old_BUILD_CC
    export CC=$old_CC
    export CXX=$old_CXX
    export AR=$old_AR
    export RANLIB=$old_RANLIB
    export AS=$old_AS
    export LD=$old_LD
    
    export old_BUILD_CC=
    export old_CC=
    export old_CXX=
    export old_AR=
    export old_RANLIB=
    export old_AS=
    export old_LD=
    build_6.sh:
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=/home/fernando/Desktop/prebuilt-toolchain/new/
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX}
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin
    export INCLUDE=${PREFIX}/include:$INCLUDE
    export LD_LIBRARY_PATH=${PREFIX}/lib:$LD_LIBRARY_PATH
    #GNUC final :)
    
    cd ${PREFIX}/src
    mkdir -p BUILD/gcc-4.4.0
    cd BUILD/gcc-4.4.0
    mkdir -p ${PREFIX}/${TARGET}/include
    mkdir -p ${PREFIX}/${TARGET}/lib
    cp -R ${PREFIX}/include ${PREFIX}/${TARGET}/include
    cp -R ${PREFIX}/lib ${PREFIX}/${TARGET}/lib
    ../../gcc-4.4.0/configure --prefix=${PREFIX} --libdir=${PREFIX}/lib --includedir=${PREFIX}/include --host=${TARGET} --target=${TARGET} --enable-languages=c,c++ --with-sysroot=${SYSROOT} --with-arch=armv5te --with-float=hard --enable-__cxa_atexit  --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace 2>&1 | tee configure.out
    make 2>&1 | tee make.out
    make install 2>&1 | tee -a make.out
    cd ../..
    build_7.sh:
    Código:
    #!/bin/bash
    
    # Setup
    
    PREFIX=/home/fernando/Desktop/prebuilt-toolchain/new/
    TARGET=arm-unknown-linux-gnu
    SYSROOT=${PREFIX}
    export ARCH=arm
    export CROSS_COMPILE=${TARGET}-
    export PATH=$PATH:${PREFIX}/bin
    export INCLUDE=${PREFIX}/include:$INCLUDE
    export LD_LIBRARY_PATH=${PREFIX}/lib:$LD_LIBRARY_PATH
    
    # Linux kernel
    
    cd ${PREFIX}/src/linux
    make zImage
    make modules
    make INSTALL_MOD_PATH=${SYSROOT} modules_install
    Notas: si pones sysroot!=prefix tendras luego que copiar de sysroot a prefix.
    Los ejecutas en orden como usuario normal (no como root) y debería funcionarte sin problemas.
    Si deseas más lenguajes a parte de c y c++, indicalo en el guión build_6.sh en la opción --enable-languages=c,c++,<lenguaje1>,... por ejemplo, para ada, fortran, c, c++ y java, "--enable-languages=c,c++,ada,fortran,java".

    Espero que esto te sirva de utilidad.

    EDITO: La Wiz no tiene soporte VFP, así que no hay razón para no usar la toolchain que hay para descargar aquí.
    Última edición por flozanot; 07/06/2009 a las 23:40 Razón: La Wiz no tiene soporte VFP.

  8. #68

    Fecha de ingreso
    Oct 2003
    Ubicación
    Valencia
    Mensajes
    32
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Madre mia que follón, yo me esperaré a que saquen un codeblocks preparado para wiz, o a que los de gph saquen un toolkit ya "ready to use" para windows, porque una cosa es comerte la bola haciendo un juego/aplicacion y otra es pelearte con los toolchains para crear un simple hello world...

  9. #69

    Fecha de ingreso
    Feb 2009
    Mensajes
    300
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por javiero Ver mensaje
    Madre mia que follón, yo me esperaré a que saquen un codeblocks preparado para wiz, o a que los de gph saquen un toolkit ya "ready to use" para windows, porque una cosa es comerte la bola haciendo un juego/aplicacion y otra es pelearte con los toolchains para crear un simple hello world...
    Si quieres te puedo pasar mi toochain para Linux. La compilo contra la misma versión de GLIBC que GPH y ya.

  10. #70

    Fecha de ingreso
    Jun 2004
    Ubicación
    Pinto (MADRID)
    Mensajes
    1,063
    Mencionado
    12 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5
    Agradecer Thanks Received 
    137
    Thanked in
    Agradecido 97 veces en [ARG:2 UNDEFINED] posts
    Estos tutoriales deberían ir directos al wiki de gp2x. Para no tener que buscarlos más adelante.

  11. #71

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,514
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por flozanot
    ...
    Menuda currada tío, qué pasote. Mil gracias!!

  12. #72

    Fecha de ingreso
    Aug 2005
    Mensajes
    9,467
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Esto me va a venir MUY bien para no tener que buscarme la vida por mi cuenta cuando vaya a compilar para la Wiz, ¡muchas gracias flozanot!

  13. #73

    Fecha de ingreso
    Apr 2006
    Mensajes
    44
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Flozanot, eso ha estado de lujo. Un millón de gracias.

    Con todo la info que has puesto no he tenido más remedio que probarlo ya a pesar de que creo que el tema me desborda. Me lo he tomado como una buena manera de iniciarme en el tema del tollchaining.

    Te comento.
    Finalmente me he decidido por glibc2.6 para ahorrarme la recompilación.
    Los pasos 1 y 2 perfecto. Sólo he tenido que añadir al gcc el gmp 4.3.1 y el mpfr 2.4.1.
    Por el resto todo bien.
    El paso tres sin problemas también pero al llegar al paso 4 kaboom!!..

    Código:
    running configure fragment for ports/sysdeps/arm/elf
    checking for ARM TLS support... yes
    running configure fragment for nptl/sysdeps/pthread
    checking for forced unwind support... no
    configure: error: forced unwind support is required
    make: *** No hay ninguna regla para construir el objetivo `install-headers'.  Alto.
    touch: no se puede efectuar `touch' sobre «/home/xau/toolchain/include/gnu/stubs.h»: No existe el fichero o el directorio
    touch: no se puede efectuar `touch' sobre «/home/xau/toolchain/include/bits/stdio_lim.h»: No existe el fichero o el directorio
    He revisado el tema en el config.log y he encontrado lo siguiente:

    Código:
    configure:27: checking for forced unwind support
    configure:51: arm-unknown-linux-gnu-gcc -o conftest -g -O2   conftest.c  >&5
    /home/xau/toolchain/lib/gcc/arm-unknown-linux-gnu/4.4.0/../../../../arm-unknown-linux-gnu/bin/ld: crt1.o: No such file: No such file or directory
    collect2: ld returned 1 exit status
    configure:57: $? = 1
    configure: failed program was:
    | /* confdefs.h.  */
    | 
    | #define PACKAGE_NAME "GNU C Library"
    | #define PACKAGE_TARNAME "c-library"
    | #define PACKAGE_VERSION "(see version.h)"
    | #define PACKAGE_STRING "GNU C Library (see version.h)"
    | #define PACKAGE_BUGREPORT "glibc"
    | #ifdef __cplusplus
    | void exit (int);
    | #endif
    | #define ASM_GLOBAL_DIRECTIVE .globl
    | #define HAVE_ASM_SET_DIRECTIVE 1
    | #define ASM_TYPE_DIRECTIVE_PREFIX %
    | #define DO_VERSIONING 1
    | #define HAVE_ASM_PREVIOUS_DIRECTIVE 1
    | #define HAVE_Z_COMBRELOC 1
    | #define NO_UNDERSCORES 1
    | #define HAVE_ASM_WEAK_DIRECTIVE 1
    | #define HAVE_ASM_CFI_DIRECTIVES 1
    | #define HAVE_BUILTIN_EXPECT 1
    | #define HAVE_BUILTIN_REDIRECTION 1
    | #define HAVE___THREAD 1
    | #define HAVE_TLS_MODEL_ATTRIBUTE 1
    | #define SIZEOF_LONG_DOUBLE 0
    | #define HAVE_TLS_SUPPORT 1
    | /* end confdefs.h.  */
    | #include <unwind.h>
    | int
    | main ()
    | {
    | 
    | struct _Unwind_Exception exc;
    | struct _Unwind_Context *context;
    | _Unwind_GetCFA (context)
    |   ;
    |   return 0;
    | }
    configure:82: result: no
    configure:156: error: forced unwind support is required
    He leido tantos documentos que ya no se por donde continuar. He visto algo al respecto de necesitar una doble compilación.
    ¿¿quizás era eso a lo que te referías al usar glibc 2.9??

    No se muy bien por donde seguir, ¿alguna sugerencia?
    < - >
    Por cierto, aunque parece un poco desfasado, he encontrado buena documentación para la construcción de toolchains que puede ser útil para la gente que como yo, esto se le hace grande

    Aquí la enlazo.

    http://www.aleph1.co.uk/oldsite/arml...OWTO/x183.html
    Última edición por xau; 07/06/2009 a las 01:57 Razón: Edición automática anti doble-post.
    Coders! Design or Resign!!! That´s the law!

    kaotiklabs.blogspot.com

  14. #74

    Fecha de ingreso
    Jan 2008
    Ubicación
    Madrid
    Mensajes
    4,451
    Mencionado
    14 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    87
    Agradecer Thanks Received 
    161
    Thanked in
    Agradecido 94 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por flozanot Ver mensaje
    El kit que hay aquí esta obsoleto. Necesitas construirte una toolchain con soporte VFP. Yo ya me he hecho una
    Me estoy quedando a cuadros , cómo que soporte VFP? Creo que el procesador ARM de la Wiz no soporta punto flotante por hardware. Aunque el tener aceleradora 3D también me hace dudar. El SDK de la GP2X que estamos usando lo hace todo por software. Pero como sea verdad esto y funcionen las cosas con VFP en la Wiz va a ser el bombazo del siglo.

  15. #75

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,514
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    ¿Seguro que soporta coma flotante por hardware? Pregunto porque no lo pone en ningún sitio. La CPU es esta:
    http://www.arm.com/products/CPUs/fam...M9EFamily.html
    Ahí dice "Optional VFP9 coprocessor delivers floating-point performance". Si miramos la web del SoC que monta la Wiz:
    http://www.mesdigital.com/english/Pr...uct_pollux.asp (Firefox dice que "este sitio puede dañar tu equipo", pero he entrado sin problemas),
    no dice por ningún lado que incluya dicho coprocesador.

Página 5 de 6 PrimerPrimer 123456 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •