Quote:
Originally Posted by masoug
Hmmm... Thanks, but what is a symbol? The linker wasn't able to successfully link the dynamic libraries correctly? (Incorrect correspondence between in-program link and the actual link library?)
|
WPILib is compiled and on the robot. It exposes its functions, so you can compile your program with the WPILib headers on your computer, copy the program to the cRIO, and then the linker will move the references from the WPILib headers to the actual WPILib functions. If the linker cannot find the function you are calling, it will throw a undefined symbol error
If you call a old function from an old version of WPILib (assuming you have the right headers), it will compile fine, but linking will throw lots of symbol errors.
this can also be an artifact of a c++ feature: every cpp file is compiled by itself, and then linked together at the end, so when you change a file, only the changed file has to be recompiled. sometimes when you update, a file is not recompiled with the new changes, so it can also throw the error
the best way to twart this is to recompile the project (solved all of our symbol errors this year): right click the project and click rebuild
Quote:
Originally Posted by masoug
So apparently, this is my to-do list:
1) Check "No App" switch.
2) Reformat/reimage cRIO. (v20)
3) Run WindRiver updates. (4.3)
4) Run driver station updates.
5) Load new code. Hope it works! 
|
I would change that to:
1) Check "No App" switch.
2) Reformat/reimage cRIO. (v20)
3) Run WindRiver updates.
(4.3)
4) Run driver station
updates.
5) restart driverstation, restart cRIO, restart WindRiver
6) rebuild (right click project, rebuild)
7) Load new code. Hope it works!
