Reply
Thread Tools
casketizer's Avatar
Posts: 566 | Thanked: 282 times | Joined on Sep 2010 @ Lower Saxony
#1
After much fiddling (I even had to get a 1997 C book from my basement) I finally got my code to compile properly with tiny c.
However it will not link.
I get :

Code:
tcc: undefined symbol '__libc_csu_fini'
tcc: undefined symbol 'abort'
tcc: undefined symbol '__libc_csu_init'
tcc: undefined symbol '__libc_start_main'
tcc: undefined symbol '__aeabi_memset'
tcc: undefined symbol 'memset'
tcc: undefined symbol '__aeabi_idiv'
tcc: undefined symbol '__aeabi_idivmod'
tcc: undefined symbol 'printf'
tcc: undefined symbol 'memcpy'
tcc: undefined symbol 'puts'
tcc: undefined symbol 'strlen'
tcc: undefined symbol '__ctype_b_loc'
tcc: undefined symbol 'sscanf'
tcc: undefined symbol 'time'
tcc: undefined symbol '__aeabi_uldivmod'
I am assuming I'm missing some packet? Do I have to install the libc6-dev package? I just extracted it and manually copied the .o's and includes that tiny asked for into /u/l and /u/i coz i wanted to avoid cramping my rootfs further by installing it.

Is there any guide how to properly set up tinyc on N900?

Someone please enlighten an old assembler freak (I write all my Windoze stuff with masm)

Last edited by casketizer; 2011-02-15 at 22:17.
 
Posts: 726 | Thanked: 345 times | Joined on Apr 2010 @ Sweden
#2
As always when asking questions regarding compilation problems: please supply the compile command that failed with all flags and options.

In this case, a Google search gives a hit pointing at a bug, http://savannah.nongnu.org/bugs/?30457 , but it might or might not be interesting in your case.
 

The Following User Says Thank You to Joorin For This Useful Post:
casketizer's Avatar
Posts: 566 | Thanked: 282 times | Joined on Sep 2010 @ Lower Saxony
#3
It was

tcc -I./include -o blah blah.c

nothing fancy.

Just compiling with -c works.
But linking fails.
 
casketizer's Avatar
Posts: 566 | Thanked: 282 times | Joined on Sep 2010 @ Lower Saxony
#4
OK I found my mistake. I had copied libc.a into wrong dir

But now it looks even worse...
Code:
tcc -I./libc/usr/include/ -v -o blah blah.c
tcc version 0.9.25
-> blah.c
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=26 old_vis=0
/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
Segmentation fault
[2|user@Nokia-N900-51-1|~/tcc]
HALP, HALP!
 
Posts: 726 | Thanked: 345 times | Joined on Apr 2010 @ Sweden
#5
You use ./include for include files but /usr/lib/libc.a for linking? Is this the bit about not wanting to clutter/install too much?

I'd have a look at the compiler configuration. Have a look at the list of directories that the compiler looks in to find standard libraries. The error you pasted suggests that you have overlapping libraries. Most likely tinycc comes with its own version, or something similar.
 
casketizer's Avatar
Posts: 566 | Thanked: 282 times | Joined on Sep 2010 @ Lower Saxony
#6
Yeah I extracted the includes from libc6-dev into ./include dir and copied the libs into /usr/lib to avoid installing libc6-dev which would eat half my remaining rootfs...this way I only lose 2MB not 10MB.

I dont think tcc has its own libc.a, there is only the one i put in /usr/lib

Last edited by casketizer; 2011-01-09 at 09:34. Reason: cleanup
 
Posts: 2,153 | Thanked: 8,462 times | Joined on May 2010
#7
Why are you not using dynamic libc library but static version?
Note that for only simple programs you dont need to install/copy any libraries to system. Dynamic libc library is part of Maemo5.

And if you do not want to install libraries to rootfs, you can use param -L<dir> which specify directory where are neede libraries stored (like -I for include)

If you have still problem, can you send me source of your program?
 
casketizer's Avatar
Posts: 566 | Thanked: 282 times | Joined on Sep 2010 @ Lower Saxony
#8
I tried using -L but it didn't work. tcc complained lib not found although it was there. OK that works now. Still get:
Code:
[2|user@Nokia-N900-51-1|~/tcc]tcc -I./libc/usr/include/ -L./libc/usr/lib -v -o blah blah.ctcc version 0.9.25
tcc: file '/usr/lib/crt1.o' not found
tcc: file '/usr/lib/crti.o' not found
-> blah.c
./libc/usr/lib/libc.so:3: unrecognized file type
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=fff2 old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
new_bind=1 new_shndx=fff2 new_vis=0 old_bind=1 old_shndx=a old_vis=0
./libc/usr/lib/libc.a: '_nl_category_name_idxs' defined twice
Segmentation fault
It seems it insists on the crt* files being in /usr/lib
How do I tell tcc to link dynamic libc?
I tried -shared but I can see no effect...
My code compiles and links fine with gcc on desktop.
(blah.c used to generate above error is the hello world like code in the post below.)

PS: Sorry for delay. I was sick.

Last edited by casketizer; 2011-01-24 at 15:33. Reason: update
 
casketizer's Avatar
Posts: 566 | Thanked: 282 times | Joined on Sep 2010 @ Lower Saxony
#9
The linking error above happens with any code. even
Code:
#include <stdio.h>
main()
{
printf("Blah");
}
 
Posts: 2,153 | Thanked: 8,462 times | Joined on May 2010
#10
Maemo is Debian system and it use deb packages for dependences. So install correctly deb package tcc (with all dependences; libc6-dev is really needed) and run:

Code:
tcc code.c
 

The Following User Says Thank You to pali For This Useful Post:
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 13:09.