J'ai une liaison avec mon Mac et je joue avec Windows. Windows 10 Professionnel / Éducation peut être utilisé avec Ubuntu sur Windows, Docker pour Windows et Hyper-V, donc cela peut être fait, mais je dois utiliser ou enseigner à l'aide de Windows dans la salle de formation sans privilèges d'administrateur. Je pense qu'il y a des moments.
Le programme d'installation officiel de Python peut également être installé sans privilèges d'administrateur, mais Conda est pratique lorsque vous essayez de faire numpy, etc. J'ai utilisé Miniconda Python-3.6 64 bits pour installer jupyter par conda, mais je pense qu'il serait plus facile d'inclure Anaconda. numpy contient f2py, mais il n'était pas prêt à être utilisé.
Comme je ne suis pas doué pour les commandes DOS ci-dessous, j'utilise PowerShell, qui a un alias, et bash de git pour Windows, que j'ai installé plus tard.
J'ai pensé à installer mingw-w64, mais comme il a été préparé par M. Conda, j'ai décidé de l'installer.
conda install m2w64-gcc-fortran
Le chemin ne passe pas simplement en l'installant, donc
C: \ Users \ nom d'utilisateur \ Miniconda3 \ Library \ mingw-w64 \ bin
(Dans le cas d'Anaconda, ʻAnaconda3 au lieu de
Miniconda3`, le chemin vers Conda est omis ci-dessous) est ajouté au chemin. Lorsque vous demandez à Cortana "variables d'environnement", il ouvre un panneau de configuration pour définir les variables d'environnement. Vous devriez pouvoir modifier le chemin de la variable d'environnement utilisateur en haut.
Le f2py de Conda est dans Scripts \ f2py.py
. Créez un fichier batch Scripts \ f2py.bat` afin qu'il puisse être exécuté.
f2py.bat
python %~dp0/f2py.py %*
Si vous utilisez PowerShell, vous pouvez écrire la fonction dans
$ profile```.
function f2py () {python \ Users \ username \ Miniconda3 \ Scripts \ f2py.py $ args}
Je peux maintenant exécuter f2py, mais quand je lui donne la source, j'obtiens l'erreur ValueError: Unknown MS Compiler version 1900
. Une petite modification de la source est nécessaire.
Lib \ distutils \ cygwinccompiler.py
commente les lignes 157 et 318 pour que pass
ne fasse rien. Ajoutez «pass #».
cygwinccompiler.py
pass#self.dll_libraries = get_msvcr()
Lib \ site-packages \ numpy \ distutils \ mingw32ccompiler.py
commente les lignes 96-104 avec #
.
mingw32ccompiler.py
# Check for custom msvc runtime library on Windows. Build if it doesn't exist.
#msvcr_success = build_msvcr_library()
#msvcr_dbg_success = build_msvcr_library(debug=True)
#if msvcr_success or msvcr_dbg_success:
# add preprocessor statement for using customized msvcr lib
# self.define_macro('NPY_MINGW_USE_CUSTOM_MSVCR')
# Define the MSVC version as hint for MinGW
#msvcr_version = '0x%03i0' % int(msvc_runtime_library().lstrip('msvcr'))
#self.define_macro('__MSVCRT_VERSION__', msvcr_version)
hello
Essayez immédiatement.
foo.f90
subroutine hello()
print *, "Hello"
end subroutine hello
f2py -c --fcompiler=gnu95 --compiler=mingw32 -m foo .\foo.f90
PS C:\Users\Nom d'utilisateur\Development\foo> python
Python 3.6.0 |Continuum Analytics, Inc.| (default, Dec 23 2016, 11:57:41) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import foo
>>> foo.hello()
Hello from Fortran90!!!
>>>
Au début, j'étais inquiet pour UnicodeDecodeError, mais lorsque j'ai basculé le shell en anglais, cela fonctionnait. C'est un mystère car l'erreur ne peut pas être reproduite même si elle est renvoyée au japonais.
chcp 437
Lowtran
Essayez-le avec lowtran. git est également inclus dans conda, mais j'ai installé git pour Windows qui est également livré avec GUI et bash.
Je n'avais pas de pandas, alors je l'ai ajouté avec conda.
git clone https://github.com/scivision/lowtran
cd lowtran
setup.py develop
conda install pandas
python DemoLowtran.py -a 0 12.5 25
J'adore les différentes couleurs.
Recommended Posts