On Debian Unstable(gcc v9.3.0), gcc won't link libraries that are passed via "-l" before the source file.  This does NOT happen on Debian Stable(gcc v8.3.0) or on my Gentoo system(gcc v9.2.0).  Is this expected behavior?

Example:

Works:
$ gcc ./simple_app.c -lX11 -o ./simple_app.out

Broken:
$ gcc -lX11 ./simple_app.c -o ./simple_app.out
/usr/bin/ld: /tmp/ccCCBBZ5.o: in function `main':
simple_app.c:(.text+0x1c): undefined reference to `XOpenDisplay'
/usr/bin/ld: simple_app.c:(.text+0xdc): undefined reference to `XCreateSimpleWindow' /usr/bin/ld: simple_app.c:(.text+0xfc): undefined reference to `XSelectInput' /usr/bin/ld: simple_app.c:(.text+0x10f): undefined reference to `XMapWindow' /usr/bin/ld: simple_app.c:(.text+0x125): undefined reference to `XNextEvent' /usr/bin/ld: simple_app.c:(.text+0x177): undefined reference to `XFillRectangle' /usr/bin/ld: simple_app.c:(.text+0x1cc): undefined reference to `XDrawString' /usr/bin/ld: simple_app.c:(.text+0x1ed): undefined reference to `XCloseDisplay'
collect2: error: ld returned 1 exit status

I am not subscribed to this list.  Please send replies directly to my E-mail.

Reply via email to