我正在尝试使用主要用 C++ 编写的第三方 SDK。他们推荐在 OSX 上运行编译输出(ODBC 驱动程序)的方法包括设置环境变量DYLD_LIBRARY_PATH
以包含一些所需库的路径。
设置此变量对于通过命令行实用程序测试驱动程序很有效,但对于在当前 shell 会话之外启动的 GUI 应用程序,我需要DYLD_LIBRARY_PATH
全局设置。
遵循以下针对优胜美地的具体说明后:https://stackoverflow.com/questions/25385934/setting-environment-variables-via-launchd-conf-no-longer-works-in-os-x-yosemite我能够在整个系统范围内设置玩具变量,例如:launchctl setenv FOO BAR
并让这些变量在重新启动后显示出来,但任何以子字符串开头的变量DYLD
都不会出现在我的环境中。
我已经通过编译明确包含静态库的项目解决了该问题,但问题仍然存在:
为什么变量一开始就"DYLD"
被忽略?