我已经看到了下面给出的两个makefile:
all: thread1 thread2 thread3
CFLAGS=-I/usr/include/nptl -D_REENTRANT
LDFLAGS=-L/usr/lib/nptl -lpthread
clean:
rm -f thread1 thread2 thread3
######################
all: thread1 thread2 thread3
CFLAGS=-D_REENTRANT
LDFLAGS=-lpthread
clean:
rm -f thread1 thread2 thread3
如果不使用makefile,用gcc编译thread1.c的正确命令行是什么?
GCC-O螺纹1
cflags=-i/usr/include/nptl
-可重入ldflags=-l/usr/lib/nptl-lpthread thread1.c
最佳答案
如果您的代码没有pthread以外的外部依赖项:
gcc thread1.c -o thread1 -D_REENTRANT -lpthread
Quote:
定义可重入会导致编译器使用C库中多个函数的线程安全(即重入)版本。
关于c - 如何使用gcc编译多线程代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6587245/