我知道有一个应用程序使用libstdc ++,但即使是超级用户,我也无法在Mac OS X 10.6 Snow Leopard系统上看到/usr/lib/libstdc++.6.0.9.dylib?
lsof | grep libstdc ++
如果我使用DYLD_LIBRARY_PATH来使用我自己的libstdc ++副本,它会在我的应用程序运行时显示在完整路径中:
fooo 1701 foooo txt REG 14,5 2439888 54431 /path/to/shared/libstdc++.6.0.9.dylib
这是一次徒劳无功的谷歌搜索。在linux系统上,任何用户都可以在/ usr / lib中查看哪些应用程序正在使用该库。
答案 0 :(得分:2)
我想原因是libstdc ++被认为是OS X中的系统库,并且与其他用户库的处理方式不同。
如果您希望系统像用户提供的库一样加载它,请使用以下内容:
export DYLD_SHARED_REGION=avoid
./your_program_name
man dyld
有关上述环境设置的含义的更多信息。