[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Axis linking problems (again)

Dear Sirs,

I am trying to port a software component to ETRAX100/ELinux,
and I have some problems.

I have managed to compile and build the component to Axis, until
recently, when I tried to integrate a new file into my project.
This file is a simple wrapper library used for making handling
Linux serial ports easier.

I could easily use this new file (comio.c) from a simple test
application, it compiled and build easily. Attached is the makefile
for this test app (Makefile.mbox.comio).

However, when I try to integrate this comio.c to the existing SW
component, which I am trying to port to ELinux, there are some linking
problems. Makefile "Makefile.mbox.sw_component" is attached. Here
are the essential parts of the compiler/linker output:

gcc_cris -melinux -O2 -Wall -D__linux__ -DELINUX -Wall -DPROJECT_XXX
XIS -nostdinc -I/projects/xxx/axis/eroot/include/uC-libc -xc++    -c -o
o comio.c


gcc_cris -melinux -s -symbolic -nostdlib -L/projects/xxx/axis/eroot/lib
ects/xxx/axis/eroot/lib/uccrt0.o main.o file2.o file3.o file4.o file5.o 
file6.o file7.o file8.o file9.o file10.o file11.o file12.o file13.o 
file14.o file15.o file16.o file17.o file18.o file19.o file20.o comio.o -lgcc
-lucc -lic  -o main
comio.o(.text+0x92): undefined reference to `_tcgetattr__FiP7termios'
comio.o(.text+0x24e): undefined reference to `_tcflush__Fii'
comio.o(.text+0x25c): undefined reference to `_tcsetattr__FiiP7termios'
comio.o(.text+0x332): undefined reference to `_tcsetattr__FiiP7termios'
comio.o(.text+0x494): undefined reference to `_tcdrain__Fi'
comio.o(.text+0x4c8): undefined reference to `_tcdrain__Fi'
comio.o(.text+0x504): undefined reference to `_tcdrain__Fi'
comio.o(.text+0x62a): undefined reference to `_tcflush__Fii'
comio.o(.text+0x650): undefined reference to `_tcsendbreak__Fii'
/projects/xxx/axis/eroot/lib/libucc.a(itoa.o)(.text+0x24): undefined
 to `___Mod'
make: *** [main] Error 1

All the necessary stuff is included in comio.c:

#include "config.h"
#include <errno.h>
#include <fcntl.h>
#include <sys/file.h>
#include <sys/ioctl.h>

/* Don't include these in Axis compilation */
#include <sys/procfs.h>
#include <sys/select.h>

#include <string.h>
#include <stdio.h>
#include <termios.h>
#include <time.h>
#include <sys/types.h>
#include <unistd.h>

What I am doing wrong here? I guess this is another compiler/linker
options error. I tried a couple of other options also, but with no

By the way, what's the deal with "sys/procfs.h" and "sys/select.h"
header files, they were not found? I assume the stuff is in
some other files in Axis environment?


  Timo Sakari, email: Timo.Sakari@xxxxxxx.fi

  "#define QUESTION ((bb) || !(bb))"    - Shakespeare