Closed Skeevert closed 4 years ago
Hi Skeevert
What platform/software versions are you using?
I'm not getting any errors on: Ubuntu 16.04 Nasm 2.11.08 GNU ld 2.26.1
I can replicate the error if you remove the fullstop off one of the ".finished" labels on either line 23 or 34?
Hi. I'm using Debian 9.9 32-bit and NASM 2.12.01. I also tried copying functions.asm and namespace.asm into online compiler, which led to the same error. Yes, removing fullstop also leads to redefinition error for other finished labels
Hi Skeevert,
I think you might be using a version of functions.asm which has a global "finished:" label in it.
This file got refactored, you can see the line difference between lesson 15 & lesson 17 (slen function); https://github.com/DGivney/assemblytutorials/blob/master/code/lesson15/functions.asm#L65 https://github.com/DGivney/assemblytutorials/blob/master/code/lesson17/functions.asm#L102
If you put this code from lesson 17 (cut & pasted functions.asm + namespace.asm): https://pastebin.com/xHAtRZ8e
Into this online nasm compiler: https://www.jdoodle.com/compile-assembler-nasm-online
You'll see the correct output.
Can you link to a paste of the code you're trying to execute please?
If that's the case I think I might do one of 2 things;
Ah, I see. Thanks! I really had a global label "finished" in functions.asm
Perfect, thanks for contacting me.
I'll update the tutorial later this weekend to make that more clear.
Trying to compile lesson 17 "namespace" results in error: symbol 'finished' redefined