Gcc changed argument operation?

It looks like the “-lm” argument is needed at the end of the line in this latest gcc provided:

jari@ENVY-17:~/c_code$ gcc -o series_mt series_mt.c -lm
jari@ENVY-17:~/c_code$ gcc -lm -o series_mt series_mt.c
/tmp/ccBIw8L4.o: In function main': series_mt.c:(.text+0x11e): undefined reference to pow’
series_mt.c:(.text+0x3af): undefined reference to `pow’
collect2: error: ld returned 1 exit status

otherwise the math library didn’t link there.
This didn’t happen earlier… with any type/version of linux.

Anyway, it seems to work, even it looks something has changed.

Now you are talking way over my head as I am just a humble desktop user, sometimes referred to as a ‘picnic’ - problem in chair, not in computer!

Does this old article have any pointers in it?:

What are you trying to compile? Is this your own code?
Are you saying that it will/wont compile depending on the order of the parameters?

I thought that the order of the parameters mattered as gcc passes the -l to ld to link that library after gcc has created the .o of your .c file.

This may help with compiler and library orders.