"Explorer des logiciels à grande échelle" est une expérience sélectionnable pour le Département de génie de l'information électronique / Département de génie électrique et électronique (eeic), Faculté de génie, Université de Tokyo. Il s'agit d'une amélioration / extension d'un programme à grande échelle publié en tant que OSS (Open Source Software), et il est difficile de saisir le tableau d'ensemble, qui ne peut pas être touché par un programme à petite échelle qui est généralement géré en classe. Il s'agit d'apprendre à gérer les programmes. Nous avons décidé d'explorer Python, que nous connaissons en classe.
Commencez par créer un répertoire de travail (ici ~ / cpython
).
Dupliquez le référentiel de Python3.10 (cpython) sur Github en utilisant git clone
.
terminal
$ mkdir cpython
$ cd cpython
$ git clone https://github.com/python/cpython
Créez un Makefile
avec configure
. À ce stade, utilisez l'option --prefix
pour enfin décider où placer le programme (ici ~ / python-install
). Vous pouvez également ajouter «-O0» à la variable d'environnement «CFLAGS» pour abaisser le niveau d'optimisation, et ajouter «-g» pour inclure le «symbole de débogage» dans le fichier exécutable. Cela vous permet d'utiliser gdb pour suivre le comportement de votre programme ligne par ligne.
Une fois que vous avez créé un Makefile
avec configure
, compilez-le et installez-le avec make
et make install
.
terminal
$ CFLAGS="-g -O0" ./configure --prefix=/home/[username]/python-install/
$ make
$ make install
Ceci termine la construction et vous pouvez démarrer python en exécutant ~ / python-install / bin / python3
.
Si vous changez le code, vous devez faire «make clean» puis «make».
Démarrez Emacs et allez dans ~ / python-install / bin /
avec la commande M-x shell
.
Une fois que j'ai pu le déplacer, j'ai appuyé sur M-x gud-gdb
et gdb --fullname python3
pour démarrer gdb et l'ai utilisé pour suivre le programme.
** Exploration de logiciels à grande échelle **
** Documentation CPython officielle (Modification de la grammaire de CPython) ** ** Documentation CPython officielle (Conception du compilateur de CPython) **
** Document officiel GNU readline **
--Ce document est référencé dans Ajout de la fonction d'indentation automatique à Python.
** Introduction à la modification de Python **
-Ceci est un article du senior d'EEIC qui a ajouté la déclaration sauf à Python. Lors de la modification de Python, j'ai mentionné par quoi commencer.
Recommended Posts