--- a/libutil++/op_bfd.cpp
+++ b/libutil++/op_bfd.cpp
@@ -369,6 +369,8 @@
 
 	for (symbol_index_t i = start; i < start+nr_all_syms; i++) {
 		if (interesting_symbol(bfd_syms[i])) {
+			// need to use filepos of original file
+			bfd_syms[i]->section->filepos = text_offset;
 			symbols.push_back(op_bfd_symbol(bfd_syms[i]));
 		}
 	}