I'm getting this linker error about a symbol referenced seg_link.dog, however in the seg_link.asm this symbol does not exist as it's being written out in the debug console. I've attached images. Thanks in advance.
Without being able to look at the code itself, I can't give an exact reason/solution, but the li1021 error indicates that you have a reference to a symbol that is never defined. The li1021 error - together with example causes/solutions - is detailed in the VisualDSP++ Help.
Your 2nd screenshot above shows an assignment of SegmentsInfo that references SEG_EXPI_START, which is presumably the reference that the Linker is trying to resolve to a definition, but is this symbol actually defined somewhere? e.g. "#define SEG_EXPI_START 0x1", or "int SEG_EXPI_START= 1", etc?
If it is defined elsewhere, such as in a header file, or another source file, ensure that it is being included in the build, and that the definition has the appropriate scope.
If you can provide an example project, we can advise further. If you prefer not to do so on the public forum, could you please contact private support through the link below, and include a link to this thread.
The variable is defined in another header file. As it turns out though, VisualDSP was pointing to a different file, in another directory when it was creating the object files and linking. Therefore, all of the changes I made in the file in my project, were not actually being made. I ended up doing a search for EXPI in windows and found the document, made the change, and it worked just fine. I had copied the whole project from a drive on our server, and as it turns out, some, but not all, of the files were still linked to the server within the project. Any clue as to why that might happen?
It may be that the Makefile was out of date and, for some reason, not being triggered to update. If there were absolute references to the project files' location on the server, it would still access them from there during the build.
Another possibility is that the Debug Information does store an absolute path to the source file used to build it. So, if you had been stepping through source-level debugging, it would be showing you the source file used to build it, rather than your local copy. If you then halted the application, and started editing the document, you could easily think you are editing the local copy, but wouldn't be.
Unfortunately all I could offer here is speculation why it was out of synch. It sounds like everything is set up correctly now, at least. If you can detail what changes you had to make (e.g. regenerating dependencies, removing/re-adding files, etc) it may help determine where the mix-up occurred.
Retrieving data ...