Compatible Linux Binaries
The LLNL web site for VisIt contains links to 2 binary packages for Linux: RHEL 6, and Ubuntu 11.04. If you want to build a binary library or plugin that is compatible with what LLNL releases, you can make virtual machines that are close to what LLNL uses for the VisIt builds. That should ensure that the binaries that you make will play well with LLNL's VisIt releases.
You'll want to get virtual machine software. Some suggestions are:
- Parallels (if you are on a Mac)
I don't have a RedHat subscription to get RHEL 6 that is used to build at LLNL:
Redhat Enterprise Linux 6, kickit.llnl.gov , 2.6.32-358.18.1.el6.x86_64 #1 SMP gcc 4.4.7
This should not be a problem though since CentOS 6.4 is essentially a free version of RHEL 6. I created a virtual machine for CentOS 6.4 64-bit. The Linux kernel and gcc compiler closely match the LLNL build system.
Linux 2.6.32-358.el6.x86_64 #1 SMP gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
After creating the virtual machine, I installed the following packages using the yum package manager to provide a working software development environment that can be used to build VisIt. Example:
su root yum install svn yum install git yum install flex yum install bison yum install gcc yum install gcc-c++ yum install makedepend yum install libX11-devel.x86_64 yum install libXt-devel.x86_64 yum install qt.x86_64 yum install qt-devel.x86_64
Add /usr/lib64/qt4/bin to your path so build_visit will locate the system qmake and we won't have to build Qt. Strictly speaking, you would probably want to let build_visit still build Qt since VisIt uses a slightly newer version than the system version. This may be made easier by installing the qt-devel.x86_64 package since it will install many missing dependencies that might prevent a successful Qt build.
mkdir thirdparty_shared mkdir thirdparty_shared/2.8.0 ./build_visit --console --no-visit --thirdparty-path `pwd`/thirdparty_shared/2.8.0 --makeflags -j4 --cmake --vtk --mesa --python --system-qt
You can get an Ubuntu 11.04 image from here.