Linking Error: relocation truncated to fit: R_68K_PC16

Groleo Marius groleo at gmail.com
Mon Mar 16 17:15:37 UTC 2009


On Mon, Mar 16, 2009 at 10:34 AM, Groleo Marius <groleo at gmail.com> wrote:
> On Fri, Mar 13, 2009 at 8:39 PM, Khem Raj <raj.khem at gmail.com> wrote:
>> On (13/03/09 18:40), Groleo Marius wrote:
>>> Hi list,
>>> I'm trying my luck compiling uClibc on a m68k Coldfire 5475 processor.
>>> I modified the Makefiles so the sources gets compiled with the -fPIC
>>> flag but I still get the error:
>>>
>>> /mnt/workspace/trunk/targets/m68k-unknown-linux-uclibc/build/build-libc/ldso/ldso/m68k/elfinterp.c:326:
>>> relocation truncated to fit: R_68K_PC16 against symbol `_dl_skip_args'
>>> defined in .bss section in ldso/ldso/ld-uClibc_so.a(ldso.oS).
>>>
>>> Does any one has any ideea ?
>>
>> can you try the attached patch
> I patched successfully but now I get other errors. below you have a
> snip of the log.
>
> [ALL  ]    ./libpthread/linuxthreads.old/sysdeps/m68k/pt-machine.h:33:
> warning: no previous prototype for 'testandset'
> [ALL  ]    libpthread/linuxthreads.old/manager.c: In function
> '__pthread_manager_event':
> [ALL  ]    libpthread/linuxthreads.old/manager.c:252: warning:
> function might be possible candidate for attribute 'noreturn'
> [ALL  ]    libpthread/linuxthreads.old/manager.c: In function
> 'pthread_handle_create':
> [ALL  ]    libpthread/linuxthreads.old/manager.c:582: warning:
> declaration of 'mask' shadows a parameter
> [ALL  ]    libpthread/linuxthreads.old/manager.c:472: warning:
> shadowed declaration is here
> [ALL  ]    m68k-unknown-linux-uclibc-gcc -c
> libpthread/linuxthreads.old/mutex.c -o
> libpthread/linuxthreads.old/mutex.os -include ./include/libc-symbols.h
> -Wall -pipe -Wstrict-prototypes -fno-strict-aliasing -Wnested-externs
> -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wformat=2
> -Wmissing-prototypes -Wmissing-declarations -Wnonnull -Wundef
> -fno-stack-protector -fno-builtin -nostdinc -I./include -I.
> -I./libc/sysdeps/linux/m68k -fno-asm
> -I/home/mariusn/workspace/trunk/_src/linux-2.6.26/include/asm-m68k
> -I/home/mariusn/workspace/trunk/_src/uClibc-0.9.29/libc/sysdeps/linux/common/
> -I/home/mariusn/workspace/trunk/_src/uClibc-0.9.29/libc/sysdeps/linux/
> -DUCLIBC_INTERNAL -std=gnu99 -O0 -g3
> -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/m68k
> -I./libpthread/linuxthreads.old/sysdeps/m68k
> -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux
> -I./libpthread/linuxthreads.old/sysdeps/pthread
> -I./libpthread/linuxthreads.old -I./libpthread
> -I/home/mariusn/cross-compiled/m68k-unknown-linux-uclibc/m68k-unknown-linux-uclibc/sys-root/usr/include/
> -I/mnt/workspace/trunk/targets/m68k-unknown-linux-uclibc/build/gcc-core-static/lib/gcc/m68k-unknown-linux-uclibc/4.3.2//include-fixed
> -I/mnt/workspace/trunk/targets/m68k-unknown-linux-uclibc/build/gcc-core-static/lib/gcc/m68k-unknown-linux-uclibc/4.3.2/include
> -DMALLOC_DEBUGGING -DHEAP_DEBUGGING -fpic -DNOT_IN_libc
> -DIS_IN_libpthread -MT libpthread/linuxthreads.old/mutex.os -MD -MP
> -MF libpthread/linuxthreads.old/.mutex.os.dep
> [ALL  ]    In file included from libpthread/linuxthreads.old/internals.h:30,
> [ALL  ]                     from libpthread/linuxthreads.old/mutex.c:22:
> [ALL  ]    ./libpthread/linuxthreads.old/sysdeps/m68k/pt-machine.h:33:
> warning: no previous prototype for 'testandset'
> [ALL  ]    {standard input}: Assembler messages:
> [ALL  ]    {standard input}:10013: Error: operands mismatch --
> statement `sne -1(%fp)' ignored
> [ALL  ]    {standard input}:10120: Error: operands mismatch --
> statement `sne -1(%fp)' ignored
> [ERROR]    make[1]: *** [libpthread/linuxthreads.old/mutex.os] Error 1
>

Got it working with the attached patch.
Thanks a lot Raj.



-- 
Regards, Groleo!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: uClibc-m68k.patch
Type: text/x-patch
Size: 2013 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/uclibc/attachments/20090316/9be975c6/attachment.bin>


More information about the uClibc mailing list