Quote:
Originally Posted by knc1
Hmm...
Hard to tell from that, all I can suggest (since I can't read your makefile from here):
Finding and fixing the cause of the visible errors might expose the problem.
First glaring problem:
Will search the host libraries, which will not be ARM code, if it was, you wouldn't be cross-compiling.
See if you can find where that is getting added to the path.
Other errors might be near-by.
At worse - you have a make file not written with cross-compiling in mind.
(Did I mention? Cross-compiling can be a real bitch. That is why people use build systems for that purpose.)
|
Ok so here is the makefile:
Code:
CROSS_COMPILE = arm-linux-gnueabi-
CFLAGS = -pthread
LDFLAGS = -Wl,-rpath, -L/usr/arm-linux-gnueabi/lib -L/home/user/Documents/kindlelibs -L/home/user/Documents/kindlelibs/lib -lXtst -lX11
SRC = myturn.c
OUT = myturn
# -print-search-dirs
kindle: $(SRC)
$(CROSS_COMPILE)gcc -DBUILD_KINDLE $(SRC) -o $(OUT) $(CFLAGS) $(LDFLAGS)
clean:
rm $(OUT)
I have done some projects for Playstation Vita, Nintendo 3DS, cross compiling for them seemed easy compared to this! Although I admit it is a bit more documented/spoonfed!
Code:
make kindle
arm-linux-gnueabi-gcc -print-search-dirs -DBUILD_KINDLE myturn.c -o myturn -pthread -Wl,-rpath, -L/usr/arm-linux-gnueabi/lib -L/home/user/Documents/kindlelibs -L/home/user/Documents/kindlelibs/lib -lXtst -lX11
install: /usr/lib/gcc/arm-linux-gnueabi/4.9/
programs: =/usr/lib/gcc/arm-linux-gnueabi/4.9/:/usr/lib/gcc/arm-linux-gnueabi/4.9/:/usr/lib/gcc/arm-linux-gnueabi/:/usr/lib/gcc/arm-linux-gnueabi/4.9/:/usr/lib/gcc/arm-linux-gnueabi/:/usr/lib/gcc/arm-linux-gnueabi/4.9/../../../../arm-linux-gnueabi/bin/arm-linux-gnueabi/4.9/:/usr/lib/gcc/arm-linux-gnueabi/4.9/../../../../arm-linux-gnueabi/bin/arm-linux-gnueabi/:/usr/lib/gcc/arm-linux-gnueabi/4.9/../../../../arm-linux-gnueabi/bin/
libraries: =/usr/lib/gcc/arm-linux-gnueabi/4.9/:/usr/lib/gcc/arm-linux-gnueabi/4.9/../../../../arm-linux-gnueabi/lib/arm-linux-gnueabi/4.9/:/usr/lib/gcc/arm-linux-gnueabi/4.9/../../../../arm-linux-gnueabi/lib/arm-linux-gnueabi/:/usr/lib/gcc/arm-linux-gnueabi/4.9/../../../../arm-linux-gnueabi/lib/:/lib/arm-linux-gnueabi/4.9/:/lib/arm-linux-gnueabi/:/lib/:/usr/lib/arm-linux-gnueabi/4.9/:/usr/lib/arm-linux-gnueabi/:/usr/lib/
Right at the end there, I see
/usr/lib/ which you said is not good... but I am never providing that path...
What about my PATH environment variable, that must be a consideration too...?
Code:
echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
I don't see /usr/lib - so I assume not.
Thanks for all this help