diff options
author | Huang Rui <ray.huang@amd.com> | 2013-12-04 15:56:10 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-12-04 15:10:54 -0800 |
commit | cb292ce222cb5ad5b8b3f9fc4b74b8109fb16c19 (patch) | |
tree | ea58f50749780a5226e3683e9c0abf09d0e2a7ed /tools/usb | |
parent | eee52f9edd0ff0a1e65a6fed836c7dbaeded7355 (diff) | |
download | lwn-cb292ce222cb5ad5b8b3f9fc4b74b8109fb16c19.tar.gz lwn-cb292ce222cb5ad5b8b3f9fc4b74b8109fb16c19.zip |
usb: tools: fix a regression issue that gcc can't link to pthread
Reproduce:
ray@hr-bak:~/usb$ make -C tools/usb/
make: Entering directory `/home/ray/usb/tools/usb'
gcc -Wall -Wextra -g -lpthread -I../include -o testusb testusb.c
/tmp/cc0EMxfy.o: In function `main':
/home/ray/usb/tools/usb/testusb.c:508: undefined reference to `pthread_create'
/home/ray/usb/tools/usb/testusb.c:531: undefined reference to `pthread_join'
collect2: error: ld returned 1 exit status
make: *** [testusb] Error 1
make: Leaving directory `/home/ray/usb/tools/usb'
Comments:
In the latest version (4.7.3) of gcc compiler, it requres that
libraries must follow the object or source files like below:
"gcc hello.c -lpthread" instead of "gcc -lpthread hello.c"
And it isn't encountered at gcc version 4.7.2.
So this patch fix to move the pthread option after testusb.c.
Signed-off-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/usb')
-rw-r--r-- | tools/usb/Makefile | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/tools/usb/Makefile b/tools/usb/Makefile index 396d6c44e9d7..acf2165c04e6 100644 --- a/tools/usb/Makefile +++ b/tools/usb/Makefile @@ -3,11 +3,12 @@ CC = $(CROSS_COMPILE)gcc PTHREAD_LIBS = -lpthread WARNINGS = -Wall -Wextra -CFLAGS = $(WARNINGS) -g $(PTHREAD_LIBS) -I../include +CFLAGS = $(WARNINGS) -g -I../include +LDFLAGS = $(PTHREAD_LIBS) all: testusb ffs-test %: %.c - $(CC) $(CFLAGS) -o $@ $^ + $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) clean: $(RM) testusb ffs-test |