Tôi có ứng dụng mà có một hàm f1 void f1()
chức năng ẩn trong C
Bên cạnh đó, tôi có một thư viện mà tôi tải sử dụng LD_PRELOAD
.
Thư viện có một số tệp mã và một số tệp tiêu đề và tệp được biên dịch thành tệp .so.
Trên các tệp tiêu đề cũng sử dụng hàm có tên f1
có cùng chữ ký như trên. Mới nhất f1
chỉ được sử dụng trong thư viện. (Tôi không thể thay đổi nó thành phương pháp tĩnh)
Vấn đề là khi tôi tải thư viện (sử dụng LD_PRELOAD
) f1
từ thư viện ghi đè f1
của ứng dụng.
Có cách nào để định cấu hình f1
thư viện chỉ hiển thị với thư viện không?
Có lý do nào khiến bạn không thể đổi tên một trong các khai báo hàm không? Tôi đoán đây là trong một codebase hiện có mà có thể là lý do tại sao bạn không thể – Bojangles