vbox的更動 62551 路徑 trunk/src/VBox/Additions
- 時間撮記:
- 2016-7-25 下午06:44:22 (8 年 以前)
- 位置:
- trunk/src/VBox/Additions
- 檔案:
-
- 修改 2 筆資料
圖例:
- 未更動
- 新增
- 刪除
-
trunk/src/VBox/Additions/common/crOpenGL/load.c
r60940 r62551 1123 1123 return bRc; 1124 1124 } 1125 1126 #if defined(Linux) && !defined(VBOXOGL_FAKEDRI)1127 # include <dlfcn.h>1128 /* We only support being used by GLX clients. If the X server GLX extension1129 * tries to use our OpenGL library it will fail, as it is written specifically1130 * against Mesa. So we detect this with the assumption that the server will1131 * not have the DISPLAY variable set, and a client will do or we can't do much1132 * with it anyway. This is only needed on Linux, as Solaris lets us replace1133 * the client library only. To avoid complications with iprt initialisation1134 * we use native system/C library APIs.1135 * We do this in a very naive way, not even checking for failure (not much we1136 * can do, better for GLX to fail than the whole X server). To keep things as1137 * simple and fail-safe as possible, we use a fixed path to the system GL1138 * library. */1139 #ifndef RTLD_DEEPBIND1140 # define RTLD_DEEPBIND 0x81141 #endif1142 1143 void __attribute__ ((constructor)) checkServerGLX(void)1144 {1145 char *pszDisplay = getenv("DISPLAY");1146 1147 if (!pszDisplay || !*pszDisplay)1148 {1149 dlopen("/var/lib/VBoxGuestAdditions/lib/system/libGL.so.1", RTLD_LAZY | RTLD_GLOBAL | RTLD_DEEPBIND);1150 dlopen("/var/lib/VBoxGuestAdditions/lib/system/libEGL.so.1", RTLD_LAZY | RTLD_GLOBAL | RTLD_DEEPBIND);1151 }1152 }1153 #endif1154 1125 1155 1126 /* Sigh -- we can't do initialization at load time, since Windows forbids -
trunk/src/VBox/Additions/linux/installer/vboxadd.sh
r62397 r62551 228 228 # multi-architecture installations 229 229 rm -f /etc/ld.so.conf.d/00vboxvideo.conf 230 ldconfig231 230 if /usr/bin/VBoxClient --check3d 2>/dev/null; then 232 rm -f /var/lib/VBoxGuestAdditions/lib/system/tmp.so 233 mkdir -m 0755 -p /var/lib/VBoxGuestAdditions/lib/system 234 ldconfig -p | while read -r line; do 235 case "${line}" in "libGL.so.1 ${ldconfig_arch} => "*) 236 ln -s "${line#libGL.so.1 ${ldconfig_arch} => }" /var/lib/VBoxGuestAdditions/lib/system/tmp.so 237 mv /var/lib/VBoxGuestAdditions/lib/system/tmp.so /var/lib/VBoxGuestAdditions/lib/system/libGL.so.1 238 break 239 esac 240 done 241 ldconfig -p | while read -r line; do 242 case "${line}" in "libEGL.so.1 ${ldconfig_arch} => "*) 243 ln -s "${line#libEGL.so.1 ${ldconfig_arch} => }" /var/lib/VBoxGuestAdditions/lib/system/tmp.so 244 mv /var/lib/VBoxGuestAdditions/lib/system/tmp.so /var/lib/VBoxGuestAdditions/lib/system/libEGL.so.1 245 break 246 esac 247 done 231 mkdir -p /var/lib/VBoxGuestAdditions/lib 248 232 ln -sf "${INSTALL_DIR}/lib/VBoxOGL.so" /var/lib/VBoxGuestAdditions/lib/libGL.so.1 249 233 ln -sf "${INSTALL_DIR}/lib/VBoxEGL.so" /var/lib/VBoxGuestAdditions/lib/libEGL.so.1
注意:
瀏覽 TracChangeset
來幫助您使用更動檢視器