У меня есть два положения заголовка наддува L1 и L2. L1 - это местоположение по умолчанию, которое может найти gcc, а L2 - нет. При компиляции разделяемой библиотеки я явно использовал -IL2.
Две программы P1 и P2 вызывают общую библиотеку.
При отладке P1 заголовки в L2 используются GDB. Это ожидается.
Но при отладке P2 заголовки в L1 используются GDB ...
Я предположил, что все символы и места отладки определяются во время компиляции. Если исходный код не перемещен, GDB может найти их автоматически. И L1 также не находится в исходном пути GDB. Как GDB может найти разные места?