网上搜索到的是需要在当前shell中export一下一个全局变量:
export LIBGL_ALWAYS_SOFTWARE=1
但是我是想在IDE中使用,最后发现/usr/bin/valgrind是一个wrapper脚本,所以只要在里面添加这个export的动作即可:
#!/bin/sh -e
#
# Valgrind wrapper
# Default Debian debug libraries.
DBGPATH=/usr/lib/debug
# Use debug libraries if found.
if [ -z "$LD_LIBRARY_PATH" ]; then
export LD_LIBRARY_PATH="$DBGPATH"
else
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DBGPATH"
fi
# Force C++ STL to use malloc and to free memory by disabling
# memory caching.
# For gcc < 3.4 versions
export GLIBCPP_FORCE_NEW=1
# For gcc >= 3.4 versions
export GLIBCXX_FORCE_NEW=1
# For Qt App run with valgrind <-----------------增加这个即可
export LIBGL_ALWAYS_SOFTWARE=1
# Use 'exec' to avoid having another shell process hanging around.
exec $0.bin "$@"