Компиляция проекта с несколькими потоками
microsha |
|
|
|
|
|
|
|
Пункты: 282 |
Регистрация: 26.11.2009 |
|
|
|
У меня плата SK-AT91SAM9260-SIM508.
Возникла проблема с компиляцией проекта, в котором несколько потоков. Ругается, что не может найти библиотеку.
Пробовал компилировать так:
arm-none-linux-gnueabi-gcc -lpthread test.c -o test
и вот так:
arm-none-linux-gnueabi-gcc -L/usr/local/arm-none-linux-gnueabi/lib -lpthread test.c -o test
Выдает ошибку:
/usr/local/bin/../lib/gcc/arm-none-linux-gnueabi/4.2.0/../../../../arm-none-linux-gnueabi/bin/ld: cannot find /lib/libpthread.so.0 inside /usr/local/bin/../arm-none-linux-gnueabi/libc
Кто-нибудь может подсказать, что можно сделать чтобы решить проблему? |
|
|
|
|
|
Valentinus |
|
|
|
|
|
|
|
Пункты: 2138 |
Регистрация: 23.01.2010 |
Пол: Мужчина |
|
|
вот кусок моего makefile:
CC=arm-none-linux-gnueabi-gcc
CXX=arm-none-linux-gnueabi-g++
LD=arm-none-linux-gnueabi-ld
LDFLAGS=-L/usr/local/bin/arm-none-linux-gnueabi/lib -static -s -fpack-struct -I /home/user/src/linux-2.6.28/include/asm-arm/arch-at91 -I /home/user/src/linux-2.6.28/include/
export CC
export CXX
export LD
export LDFLAGS
prog: module1.o module2.o module2.o module4.o
$(CXX) $(LDFLAGS) -o prog module1.o module2.o module2.o module4.o -lpthread
module1.o: module1.cpp module1.h
$(CXX) $(LDFLAGS) -c module1.cpp
и т.д. |
|
|
|
|
|
microsha |
|
|
|
|
|
|
|
Пункты: 282 |
Регистрация: 26.11.2009 |
|
|
|
Большое спасибо.
Кусок makefile очень помог. Все заработало, когда указал путь:
LDFLAGS=-L/usr/local/bin/arm-none-linux-gnueabi/lib -static |
|
|
|
|
|
|