@@ -66,8 +66,8 @@ Details for GSAS-II use on these specific platforms follows below:
6666
6767 **Raspberry Pi ** (ARM) Linux: GSAS-II has been installed on both 32-bit
6868 and the 64-bit version of the Raspberry Pi OS (formerly
69- called Raspbian) and compiled binaries are provided at present for
70- both, but the 32-bit support may not continue. It is expected that
69+ called Raspbian) and some older compiled binaries are provided at present for
70+ both, but 32-bit support may not continue. It is expected that
7171 these binaries will also function on Ubuntu Linux for Raspberry Pi,
7272 but this has not been tried.
7373 The performance of GSAS-II on a Raspberry Pi is not blindingly fast,
@@ -81,31 +81,28 @@ Details for GSAS-II use on these specific platforms follows below:
8181 versions of Python and its packages, `see here for more information
8282 <https://advancedphotonsource.github.io/GSAS-II-tutorials/install-pip.html> `_.
8383 With
84- 64-bit Pi OS it may be possible for us to provide a GSAS2FULL installer
84+ 64-bit Pi OS it may be possible for us to provide a GSAS2MAIN installer
8585 (which will need to include a custom-supplied wxPython wheel, since
8686 that is not available in conda-forge) or else pip must be used to
87- download and build wx . Please let us know if you are intending to
87+ download and build wxpython (quite slow) . Please let Brian know if you are intending to
8888 use GSAS-II on a Raspberry Pi for a classroom, etc and would need
89- this.
89+ help with this.
9090
91- Version Control
91+ Source Code Management
9292-----------------------
93+
9394The master version of the source code for GSAS-II resides on
94- GitHub at URL and the git
95+ GitHub at URL (in branch main) and the git
9596version control system (VCS) is usually used to install the files needed by GSAS-II. When
9697GSAS-II is installed in this manner, the software can be easily
9798updated, as git commands can download only the changed sections of files
9899that need to be updated. It is likewise possible to use git to regress
99100to an older version of GSAS-II, though there are some limitations on
100101how far back older versions of GSAS-II will be with current versions
101- of Python. While git is not required for use of GSAS-II, special
102+ of Python and associated packages . While git is not required for use of GSAS-II, special
102103procedures must be used to install GSAS-II without it and once
103104installed without git, updates of GSAS-II must be done manually.
104105
105- We are currently in a transition period to GitHub from
106- a previous subversion server. As we migrate to GitHub, updates will be
107- made in parallel to both servers.
108-
109106Python Requirements
110107-----------------------
111108
@@ -120,12 +117,16 @@ as defined in variable :attr:`GSASIIdataGUI.versionDict`,
120117but for new installations we are currently recommending the following
121118interpreter/package versions:
122119
123- * Python 3.11, 3.12 or 3.13 is recommended. GSAS-II should run with any Python
124- version from 3.7 or later, but you will need to locate (from the
125- old subversion server) or locate binaries to match that Python version.
120+ * Python 3.11, 3.12 or 3.13 is recommended. No testing has yet been
121+ done with Python 3.14, but no problems are expected.
122+ GSAS-II should run with any Python
123+ version from 3.7 or later, but we do not create binaries for
124+ all versions of Python and numpy. You will need to locate (from the
125+ old subversion server) older binaries to match older Python
126+ versions or compile them yourself.
126127 * wxPython 4.2 or later is recommended, but with Python <=3.9 any
127- wx4.x version should be OK. However, there may be problems with
128- newer sections of the GUI with wx <4.0.
128+ wx4.x version should be OK. Problems with
129+ newer sections of the GUI are expected for wx <4.0.
129130 * NumPy 1.26 recommended with Python 3.11 and 2.2 with 3.12 or 3.13,
130131 but anything from 1.17 on is likely fine,
131132 but if you do not match the supplied GSAS-II binaries you will
@@ -139,7 +140,7 @@ interpreter/package versions:
139140 * SciPy: no version-related problems have been seen, but in at least one
140141 case multiple imports are tried to account for where function
141142 names have changed.
142- * PyCifRW: no version issues are known. We have been using an older
143+ * PyCifRW: no version issues are known. We had been using an older
143144 version for a long time, but in 2025 switched to the latest version
144145 and did not see any problems.
145146 * pybaselines: no version issues are known.
@@ -149,12 +150,7 @@ and Python packages, see comments below and details here:
149150:attr: `GSASIIdataGUI.versionDict `,
150151
151152Note that GSAS-II is currently being developed using Python 3.11
152- through 3.13. We
153- have just adopted a build process using meson (replacing scons) for
154- Python 3.12+ and
155- is not fully documented. If you need to build the GSAS-II binaries at
156- this time, please contact Brian.
157-
153+ through 3.13.
158154We are no longer
159155supporting Python 2.7 and <=3.6, and strongly encourage that
160156systems running GSAS-II under these older Python versions reinstall
@@ -194,6 +190,10 @@ Python extension packages are required:
194190GSAS-II will not start or will start but will not be able to do much
195191if the above packages are not available.
196192
193+ ----------------------------------
194+ Recommended Packages for GUI Use
195+ ----------------------------------
196+
197197In addition to the previous required packages, several Python packages
198198are utilized in limited sections of the GUI code, but are not
199199required. If these packages are not present, warning
@@ -220,13 +220,13 @@ optional packages are:
220220 (http://www.pythonware.com/products/pil/). This is used to read and
221221 save certain types of images.
222222
223- * h5py is the HDF5 interface and hdf5 is the support package. These
223+ * h5py and hdf5: h5py is the HDF5 interface and hdf5 is the support package. These
224224 packages are (not surprisingly) required
225225 to import images from HDF5 files. If these libraries are not present,
226- the HDF5 importer(s) will not appear in the import menu and a
226+ the HDF5 importers will not appear in the import menu and a
227227 warning message appears on GSAS-II startup.
228228
229- * imageio is used to make movies. This is optional and is offered for plotting
229+ * imageio is used to make movies. This is optional and is utilized for plotting
230230 superspace (modulated) structures.
231231
232232* seekpath is used for magnetic lattice (k-vector) searches
@@ -301,7 +301,13 @@ installing the SciPy is recommended:
301301
302302* SciPy (http://docs.scipy.org/doc/scipy/reference/).
303303
304- These packages fortunately are common and are easy to install. There are
304+ These packages fortunately are common and are easy to install.
305+
306+ ------------------------------------
307+ Recommended Packages for Scripting
308+ ------------------------------------
309+
310+ There are
305311some relatively minor scripting capabilities that will only run when a few
306312additional packages are installed:
307313
@@ -316,7 +322,55 @@ additional packages are installed:
316322but none of these are required to run scripts and the vast
317323majority of scripts will not need these packages.
318324
319- **Installing a minimal Python configuration **:
325+ ---------------------------
326+ Optional Python Packages
327+ ---------------------------
328+
329+ * Sphinx (https://www.sphinx-doc.org) is used to generate the
330+ documentation you are currently reading. Generation of this documentation
331+ is not generally something needed by users or even most code
332+ developers, since the prepared documentation on
333+ https://gsas-ii.readthedocs.io is usually reasonably up to date.
334+
335+ * The sphinx-rtd-theme is required to build the documentation in
336+ standard the format (though this can be changed with minor editing.)
337+
338+ --------------------------
339+ Compilation Requirements
340+ --------------------------
341+
342+ Most users on Windows and Mac will not need to compile
343+ GSAS-II. Binaries are supplied as part of the gsas2main
344+ self-installer. Linux users may need to install the software in a
345+ manner that allows for local compilation. Developers may wish to
346+ perform all installation steps for themselves. These are the
347+ requirements:
348+
349+ * The gfortran complier is required. There has been some work done
350+ with glang, and I think this passes the self-tests but it is unknown
351+ if there are other problems. This can be installed in a number of
352+ ways. For Windows and Mac, conda-forge is a good choice. (For MacOS,
353+ Apple's XCode must also be installed). For Linux,
354+ dist-supplied versions are probably a better choice.
355+
356+ * gcc or other c compiler is required to build one binary for image
357+ processing. For Windows use Microsoft Visual C/C++. On Mac, use of
358+ conda-forge to install gcc is a good installation choice (again
359+ XCode is required). For Linux, dist-supplied versions are probably a
360+ better choice.
361+
362+ * meson (https://mesonbuild.com/meson-python/) is used to compile the
363+ relatively small amount of Fortran, C and Cython code that is included with
364+ GSAS-II. This is a Python package typically installed with conda or
365+ pip. On Linux, a dist-supplied version (Debian, RedHat, etc.) is
366+ likely available too.
367+
368+ * Cython is needed to build one binary used for magnetism (k-vector
369+ searching). Install this typically with conda or pip.
370+
371+ --------------------------------------------------------
372+ Installation Notes for Minimal Python configuration
373+ --------------------------------------------------------
320374
321375There are many ways to install a minimal Python configuration.
322376Below, I show some example commands used to install using the
@@ -355,24 +409,7 @@ Notes on these commands:
355409* the 2nd command (python) is used to invoke GSAS-II scriptable for the first time, which is needed to load the binary files from the server.
356410
357411
358- ---------------------------
359- Optional Python Packages
360- ---------------------------
361-
362- * Sphinx (https://www.sphinx-doc.org) is used to generate the
363- documentation you are currently reading. Generation of this documentation
364- is not generally something needed by users or even most code
365- developers, since the prepared documentation on
366- https://gsas-ii.readthedocs.io is usually reasonably up to date.
367-
368- * meson (https://mesonbuild.com/meson-python/) is used to compile the
369- relatively small amount of Fortran code that is included with
370- GSAS-II.
371-
372- * SCons (https://scons.org/) was used to compile the relatively small amount of
373- Fortran code that is included with GSAS-II. Use of this is only for
374- Python 3.11 and previous. It should no longer be needed.
375-
412+
376413Required Binary Files
377414--------------------------------
378415
@@ -406,10 +443,8 @@ Should one wish to run GSAS-II where binary files are not
406443supplied (such as 32-bit Windows or Linux) or with other combinations of
407444Python/NumPy, compilation will be need to be done by the user. See
408445the `compilation information <https://advancedphotonsource.github.io/GSAS-II-tutorials/compile.html >`_ for more information.
409- We have just adopted a build process using meson (in place of scons) for
410- Python 3.12+. This is incorporated in the "main" branch, but
411- is not fully documented. If you need to build the GSAS-II binaries at
412- this time, please contact Brian.
446+ The build process was recently updated to use meson (in place of
447+ scons).
413448
414449Supported Externally-Developed Software
415450----------------------------------------------------
@@ -495,6 +530,6 @@ as part of the GSAS-II distribution and must be installed separately:
495530 Python environment for PDFfit2, so that there is no possibility for
496531 conflict between package versions. When GSAS-II is run from a
497532 Python installation that includes the conda package manager (which
498- is the case with the GSAS2FULL installer), the GUI will offer an option to
533+ is the case with the GSAS2MAIN installer), the GUI will offer an option to
499534 install PDFfit2 via a separate environment when the
500535 PDFfit2 option is selected on the Phase/RMC tab.
0 commit comments