Tôi đang sử dụng setenv để đặt DYLD_LIBRARY_PATH vì vậy khi tôi làm dlopen() nó sẽ có đường dẫn chính xác để tìm .dylib của tôi, nhưng khi tôi làm dlopen() nó không dường như không tìm kiếm đường dẫn mà tôi đã thêm vào DYLD_LIBRARY_PATH.Các vấn đề với việc sử dụng setenv và sau đó thực hiện cuộc gọi dlopen
Từ những gì tôi có thể thu thập các thay đổi của mình sang DYLD_LIBRARY_PATH sẽ không có hiệu lực cho đến khi thực hiện lại quy trình của tôi. Điều này có đúng không?
Ngoài ra nếu điều đó là chính xác, có cách nào để đặt DYLD_LIBRARY_PATH và có thay đổi của tôi làm việc với ra làm một thiết lập lại quá trình của tôi.
Ồ vâng tôi viết mã này trên MAC OSX.
Xin cảm ơn trước.
Hiện tại, phần mềm của chúng tôi thực hiện lại việc thiết lập LD_LIBRARY_PATH với các đường dẫn bổ sung của chúng tôi. Tôi đã cố gắng để làm điều đó mà không tái thực hiện, nhưng có lẽ đó là cách duy nhất trên hệ điều hành MAC. Điều này làm cho nó khó khăn hơn nhiều để gỡ lỗi vì việc sửa lỗi Xcode bị gián đoạn giữa lần thực hiện đầu tiên và lần thứ hai. –
Java thực thi lại IFF LD_LIBRARY_PATH hiện tại chưa chính xác. Chương trình của bạn phải làm như vậy, hoặc nó sẽ nhập vòng lặp vô hạn. Vì vậy, để gỡ lỗi nó, thiết lập LD_LIBRARY_PATH đến những gì nó đã có thể được thiết lập trước khi tái exec (có lẽ trước khi bắt đầu Xcode), và gỡ lỗi đi. –