[Question] link error with a simple, DOS small memory model exe, asm-main+asm-lib+c-lib, error: C symbol is missing #1414
-
Background: this is just a small test - the original disassembling project is much larger (~350KLOC) and currently in TASM syntax
my goal is to replace all build settings (build.bat/dosbox.conf), asm/c and resulting obj/exe files available in this small test repo git: https://github.com/LowLevelMahn/AlbertoMarnetto_seperated_restunts/tree/llm/tasm32_tests_with_binaries/src/tasm32_t build is done like this
runs and procduces a working dos exe that prints some text to the console when i try to use (some recent) wlink like this
i get this error
looking at wdism result on my_lib_c the _C_MSG symblos seems defined, any idea what im doing wrong?
this is the output of wdism for the other 2 obj files
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
the issue is simple. |
Beta Was this translation helpful? Give feedback.
the issue is simple.
by default wlink works with all symbols as case-sensitive that _c_msg and _C_MSG is two different symbols.
You have two possibility, first to use symbols in your code as case-sensitive that you fix symbol name to be exactly same (with same case) or use case-insensitive link by wlink option
option NOCASEEXACT
then both symbols _c_msg and _C_MSG will be same (I think it will be upper-cased).