OSDN Git Service

version 0.6.2
[molby/Molby.git] / README
1 ========================================================
2
3                      Molby
4
5     An Interactive Molecular Modeling Software
6         with Integrated Ruby Interpreter
7   
8           Version 0.6.2
9
10                   Toshi Nagata
11
12 ========================================================
13
14 1. What is it?
15
16 Molby is an application to visualize and build molecular models interactively through 3D display. It provides the following capability:
17
18 - Viewing molecular models in either ball-and-stick or "line" display.
19 - Interactive modification of molecular models by mouse operation.
20 - Viewing and editing atomic coordinates and other parameters in numeric tables.
21 - Importing and exporting structure/coordinate data for other program packages such as Gaussian, GAMESS, NAMD and SHELX.
22 - Embedded Ruby interpreter for automated processing of molecular models.
23
24 2. Supported Platforms
25
26 Molby runs on Mac OS X (10.4 and later) and Microsoft Windows (XP and later). Executable binaries are provided for both platforms (Molby.dmg for Mac, SetupMolby.exe for Windows).
27
28 3. Copyright and License
29
30 Molby is a copyrighted product of Toshi Nagata.
31
32        Copyright (C) 2009-2010 Toshi Nagata
33
34 Molby includes (more technically: is statically linked to) the following softwares, which are copyrighted products as described below:
35
36 - wxWidgets 2.8.9: Copyright (C) 1992-2008 Julian Smart, Robert Roebling, Vadim Zeitlin and other members of the wxWidgets team. Portions (c) 1996 Artificial Intelligence Applications Institute
37 - Ruby 1.8.7: Copyright (C) 1993-2009 Yukihiro Matsumoto
38 - CLAPACK: Copyright (c) 1992-2008 The University of Tennessee.
39 - AmberTools 1.3: Copyright (c) Junmei Wang, Ross C. Walker, Michael F. Crowley, Scott Brozell and David A. Case
40
41 Molby is distributed under the GNU General Public License (version 2). See the file COPYING for more details.
42
43 4. How to Use
44
45 The document in HTML format is available. Try the tutorial to get familiar with Molby.
46
47 5. How to Build
48
49 The information in this section is only for those who want to build Molby from the source. If you use the binary distribution, you do not need to read this section.
50
51 Building Molby is somewhat complicated because you need static libraries of wxWidgets and Ruby (and CLAPACK in Windows). The procedures are described below for each platform.
52
53 (1) Mac OS X
54
55 (i) Xcode, gfortran
56
57 Install Xcode, if you have not done so yet. The Xcode project included in the source distribution is for Xcode 3.0 and later, thus you need Mac OS 10.5. It may work with Xcode 2.5 on Mac OS 10.4, but this have not been tested.
58
59 To build AmberTools, you need to have gfortran installed. The author uses a binary build available at the "R for Mac OS X" website (http://r.research.att.com/tools/, gfortran-4.2.3.dmg).
60
61 We need static linking of libgfortran.a. For that purpose, the following modification should be done after installation of gfortran.
62
63 % cd /usr/local/lib
64 % sudo cp libgfortran.a libgfortran-static.a  #  Copy as a different name
65 % sudo strip -S libgfortran-static.a  #  Remove the symbols
66 % sudo ranlib libgfortran-static.a
67
68 The last two lines are necessary to avoid linker warnings saying "Can't find atom for N_GSYM stabs."
69
70 (ii) wxWidgets
71
72 Get wxMac-2.8.9.tar.gz from the wxWidgets page in sourceforge.net (http://sourceforge.net/projects/wxwindows/files/). Newer versions may work, but they are not tested.
73
74 Unpack wxMac-2.8.9.tar.gz. Move the resulting directory wxMac-2.8.9 to $HOME/Development, and rename it to wxMac (or make a symbolic link). The console commands will be as follows:
75 $ mkdir -p $HOME/Development
76 $ cd $HOME/Development
77 $ mv somewhere/wxMac-2.8.9.tar.gz ./
78 $ tar xvzf wxMac-2.8.9.tar.gz
79 $ ln -s wxMac-2.8.9 wxMac
80
81 If you want to place wxMac in another place (and/or another name) than $HOME/Development, you will need to change the build settings in Xcode.
82
83 Build wxMac. The commands will be as follows. Take care of the configure options.
84 $ cd $HOME/Development/wxMac
85 $ mkdir osx-build
86 $ cd osx-build
87 $ ../configure --with-macos-sdk=/Developer/SDKs/MacOSX10.4u.sdk --with-macosx-version-min=10.4 --enable-universal_binary --disable-shared --with-opengl --enable-unicode --with-libjpeg=builtin --with-libpng=builtin --with-regex=builtin --with-libtiff=builtin --with-zlib=builtin --with-expat=builtin
88 $ make
89 (You do not need to do "sudo make install".)
90
91 (iii) Ruby
92
93 Get ruby-1.8.7-p160.tar.gz from the Molby source distribution site. Unpack it, and move the resulting directory ruby-1.8.7-p160 to $HOME/Development. Rename it to ruby-1.8.7-static (or make a symbolic link).
94 $ cd $HOME/Development
95 $ mv somewhere/ruby-1.8.7-p160.tar.gz ./
96 $ tar xvzf ruby-1.8.7-p160.tar.gz
97 $ ln -s ruby-1.8.7-p160 ruby-1.8.7-static
98
99 If you want to place ruby-1.8.7-static in another place (and/or another name) than $HOME/Development, you will need to change the build settings in Xcode.
100
101 Patch the Ruby source.
102 $ cd $HOME/Development/ruby-1.8.7-static
103 $ patch --backup -p1 < $MOLBY/ruby-1.8.7-p160-tn.patch
104 ($MOLBY is the location of the Molby source.)
105
106 Build Ruby with --disable-shared option.
107 $ CFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -arch i386 -arch ppc -O2' ./configure --disable-shared --disable-thread
108 $ make
109
110 (iv) Build on Xcode
111
112 Open xcode-build/Molby.xcodeproj, and build. Note that there are two configurations, Debug and Release. In the "Release" build, the Ruby scripts update_version.rb and Documents/makedoc.rb are executed before compilation; update_version.rb modifies the version strings in the source files (by looking up the file Version), and makedoc.rb creates the HTML docments in the doc directory.
113
114 (2) Windows
115
116 The Windows binary is built by using MinGW/MSYS. If you use VC++ or Cygwin, you need to help yourself. I use Windows only occasionally, so there may be errors and misunderstandings in the following descriptions. Feedback is welcome!
117
118 (i) MinGW, MSYS, gfortran
119
120 Install MinGW and MSYS. The author uses MinGW-5.1.4 and MSYS-1.0.11.
121
122 To build AmberTools, you need to have gfortran installed. The author has experienced problems with the gfortran of MinGW, and instead is using the binary build taken from http://quatramaran.ens.fr/~coudert/gfortran/ (version 4.5.0, 20090421, trunk revision 146519).
123
124 (ii) wxWidgets
125
126 Get wxMSW-2.8.9.tar.gz from the wxWidgets page in sourceforge.net (http://sourceforge.net/projects/wxwindows/files/). Newer versions may work, but they are not tested.
127
128 Unpack wxMSW-2.8.9.tar.gz. Move the resulting directory wxMSW-2.8.9 to $HOME (the home directory of the MinGW The console commands will be as follows:
129 $ cd $HOME
130 $ mv somewhere/wxMSW-2.8.9.tar.gz ./
131 $ tar xvzf wxMSW-2.8.9.tar.gz
132
133 Build wxMSW. The commands will be as follows. Take care of the configure options.
134 $ cd $HOME/wxMSW-2.8.9
135 $ mkdir msw-build
136 $ cd msw-build
137 $ ../configure --with-msw --with-opengl --disable-shared --enable-unicode --with-libjpeg=builtin --with-zlib=builtin
138 $ make
139 (You do not need to do "sudo make install".)
140
141 (iii) Ruby
142
143 Get ruby-1.8.7-p160.tar.gz from the Molby source distribution site. Unpack it, and move the resulting directory ruby-1.8.7-p160 to $HOME. Rename it to ruby-1.8.7-static.
144 $ cd $HOME
145 $ mv somewhere/ruby-1.8.7-p160.tar.gz ./
146 $ tar xvzf ruby-1.8.7-p160.tar.gz
147 $ mv ruby-1.8.7-p160 ruby-1.8.7-static
148
149 Patch the Ruby source.
150 $ cd $HOME/ruby-1.8.7-static
151 $ patch --backup -p1 < $MOLBY/ruby-1.8.7-p160-tn.patch
152 ($MOLBY is the location of the Molby source.)
153
154 Build Ruby with --disable-shared option.
155 $ ./configure --disable-shared --disable-thread
156 $ make
157
158 (iv) CLAPACK
159
160 Get clapack-3.1.1.1.tar.gz from the CLAPACK official site (http://www.netlib.org/clapack/) and unpack it. (clapack-3.2.1 may cause trouble because it uses symbolic links.)
161 $ cd $HOME
162 $ mv somewhere/clapack-3.1.1.1.tgz ./
163 $ tar xvzf clapack-3.1.1.1.tgz
164
165 Patch the clapack source.
166 $ patch -p0 <$MOLBY/clapack-3.1.1.1-mingw.patch
167
168 Build CLAPACK.
169 $ cd CLAPACK-3.1.1.1
170 $ make
171
172 Modify libf2c.a, so that the 'main' entry does not interfere the main program.
173 $ cd F2CLIBS
174 $ cp libf2c.a libf2c_nomain.a
175 $ ar d libf2c_nomain.a main.o
176 $ cd ..
177
178 Copy the library and header files to /lib/clapack.
179 $ mkdir /lib/clapack
180 $ cp F2CLIBS/libf2c_nomain.a /lib/clapack
181 $ cp blasMinGW.a /lib/clapack/libblas.a
182 $ cp lapackMinGW.a /lib/clapack/liblapack.a
183 $ cp INCLUDE/f2c.h INCLUDE/blaswrap.h INCLUDE/clapack.h /lib/clapack
184
185 (v) Inno Setup 5
186
187 Install Inno Setup 5 (http://www.jrsoftware.org/isinfo.php). This is necessary to create the Molby Installer.
188
189 (vi) Build
190
191 Now you can start building Molby! Go to the project directory and do make.
192 $ cd somewhere/Molby/msw-build
193 $ make
194 $ make setup  #  To make the installer
195
196
197 2010.1.21.
198 2010.1.31. Added notice on AmberTools1.3
199 2010.4.29. Update description for MinGW/MSYS
200 2011.8.3.  Added notice on static linking of libgfortran for Mac
201
202 Toshi Nagata