Dynamic symbols' addresses are only calculated when the object files gets loaded into memory and linked into the program's symbol table. In general, it's impossible to determine their final address before linking.
You may be able to get the data you want using LLVM's Link-Time Optimization module instead of ObjectFile, as that does perform address linking when loading a module, if I recall correctly.
Good luck!