当前位置: 技术问答>linux和unix
询问个uclinux下用多线程时候出现的问题
来源: 互联网 发布时间:2016-01-22
本文导语: 我的makefile是这么写的: EXEC = hello OBJS = hello.o LDLIBS += -lpthread all: $(EXEC) $(EXEC): $(OBJS) $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS) romfs: $(ROMFSINST) /bin/$(EXEC) clean: -rm -f $(EXEC) *.elf *.gdb *.o 而且程序...
我的makefile是这么写的:
EXEC = hello
OBJS = hello.o
LDLIBS += -lpthread
all: $(EXEC)
$(EXEC): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS)
romfs:
$(ROMFSINST) /bin/$(EXEC)
clean:
-rm -f $(EXEC) *.elf *.gdb *.o
而且程序里也#include 了
但是编译内核时候总是出现这样的错误,出现在我make user_only这一步
错误提示在include/pthread.h文件和arm-elf/sys-include/schded.h里parse error before '__THROW'
还有很多的警告:
在pthread.h里总是紧跟上面那个错误后出现警告:data definition has no type or shorage class。
而且警告和错误提示的地方都在同一行。
希望大虾们给个提示啊
EXEC = hello
OBJS = hello.o
LDLIBS += -lpthread
all: $(EXEC)
$(EXEC): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS)
romfs:
$(ROMFSINST) /bin/$(EXEC)
clean:
-rm -f $(EXEC) *.elf *.gdb *.o
而且程序里也#include 了
但是编译内核时候总是出现这样的错误,出现在我make user_only这一步
错误提示在include/pthread.h文件和arm-elf/sys-include/schded.h里parse error before '__THROW'
还有很多的警告:
在pthread.h里总是紧跟上面那个错误后出现警告:data definition has no type or shorage class。
而且警告和错误提示的地方都在同一行。
希望大虾们给个提示啊
|
会不会是工具链的 多线程支持问题? 有三种多线支持, 这是buildroot的uclibc工具链配置菜单中提供的选项.
( ) None
( ) linuxthreads
(X) linuxthreads (stable/old)
( ) Native POSIX Threading (NPTL)
( ) None
( ) linuxthreads
(X) linuxthreads (stable/old)
( ) Native POSIX Threading (NPTL)
|
你有没有编译libpthread.a, 如果没有可以make menuconfig需要支持thread
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。