-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
linker multiple definition of #1
Comments
old version: GNU ld version 2.26.1-1.fc24 |
Okey gcc -Wl,--allow-multiple-definition main.o parser.o lexer.o xmalloc.o output.o symbols.o -o asm51 this is fast solution, but is it possible to put -Wl,--allow-multiple-definition somewhere in Makefile. |
Find place in Makefile, but is it right?
|
Thanks for the report. Instead of adding linker flags, I fixed the code. Plus it motivated me to do some quick cleanup. Could you check if the code from the main branch builds correctly now? |
Now it seems to work perfectly. It was extern keyword what was solution I first try to solve it with static keyword. Now it is beautiful. Thanks. |
can you solve this:
/usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:25: multiple definition of
emit_pc'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:25: first defined here /usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:23: multiple definition of
pass'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:23: first defined here/usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:55: multiple definition of
macros'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:55: first defined here /usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:40: multiple definition of
symbols'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:40: first defined here/usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: multiple definition of
verbosity'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: first defined here /usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: multiple definition of
lineno'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: first defined here/usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: multiple definition of
filename'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: first defined here /usr/bin/ld: parser.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: multiple definition of
yyin'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: first defined here/usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/lexer.c:330: multiple definition of
yyin'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: first defined here /usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:23: multiple definition of
pass'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:23: first defined here/usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: multiple definition of
filename'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: first defined here /usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: multiple definition of
lineno'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: first defined here/usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:25: multiple definition of
emit_pc'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:25: first defined here /usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:55: multiple definition of
macros'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:55: first defined here/usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:40: multiple definition of
symbols'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:40: first defined here /usr/bin/ld: lexer.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: multiple definition of
verbosity'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: first defined here/usr/bin/ld: xmalloc.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: multiple definition of
verbosity'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: first defined here /usr/bin/ld: xmalloc.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: multiple definition of
lineno'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: first defined here/usr/bin/ld: xmalloc.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: multiple definition of
filename'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: first defined here /usr/bin/ld: xmalloc.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: multiple definition of
yyin'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: first defined here/usr/bin/ld: output.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:25: multiple definition of
emit_pc'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:25: first defined here /usr/bin/ld: output.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:23: multiple definition of
pass'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/output.h:23: first defined here/usr/bin/ld: output.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: multiple definition of
verbosity'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: first defined here /usr/bin/ld: output.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: multiple definition of
lineno'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: first defined here/usr/bin/ld: output.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: multiple definition of
filename'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: first defined here /usr/bin/ld: output.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: multiple definition of
yyin'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: first defined here/usr/bin/ld: symbols.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:40: multiple definition of
symbols'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:40: first defined here /usr/bin/ld: symbols.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:55: multiple definition of
macros'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/symbols.h:55: first defined here/usr/bin/ld: symbols.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: multiple definition of
verbosity'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:42: first defined here /usr/bin/ld: symbols.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: multiple definition of
lineno'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:40: first defined here/usr/bin/ld: symbols.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: multiple definition of
filename'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:38: first defined here /usr/bin/ld: symbols.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: multiple definition of
yyin'; main.o:/home/heikki/pr/programs/A51/asm51-0.6/main.h:32: first defined hereolder machines did not do that, but new ones does.
The text was updated successfully, but these errors were encountered: