COMPUTING for SCIENCE and ENGINEERING Revised Through End of Chapter 6

Total Page:16

File Type:pdf, Size:1020Kb

COMPUTING for SCIENCE and ENGINEERING Revised Through End of Chapter 6 COMPUTING FOR SCIENCE AND ENGINEERING Revised through end of Chapter 6 Robert D. Skeel This work is licensed under the Creative Commons Attribution 3.0 United StatesLicense. To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/us/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. Contents 1 Introduction 1 1.1 Role of Computing in Science and Engineering.....................1 1.2 Using Unix.........................................2 1.2.1 Text editors.....................................5 1.2.2 Integrated development environments......................5 1.2.3 Shell scripts.....................................5 1.2.4 Unix tools......................................6 1.3 Installation of Software..................................8 1.3.1 Unix, C compiler, and OpenMP.........................9 1.3.2 The Anaconda Python Distribution and MPI.................. 10 1.3.3 ∗ The Enthought Python Distribution...................... 11 1.3.4 ∗ Separate Installation of Python and Packages................. 12 1.3.5 ∗ MPI for Python................................. 12 1.4 Use of Rosen Center Linux Cluster............................ 13 1.4.1 Remote access and file transfer.......................... 13 1.4.2 Python....................................... 13 2 Python 14 2.1 Interactive Computing................................... 14 2.1.1 Importing a module................................ 15 2.1.2 Documentation................................... 15 2.1.3 Lists......................................... 15 2.1.4 Strings........................................ 16 2.1.5 Data......................................... 16 2.1.6 Operators...................................... 17 2.2 Developing a Script..................................... 18 2.2.1 Control structures................................. 19 2.2.2 Objects....................................... 20 2.2.3 Reading and writing................................ 20 2.3 Variables and Functions.................................. 22 2.3.1 Variables and data................................. 22 2.3.2 Assignment and copy............................... 22 i 2.3.3 Functions...................................... 23 2.4 Developing a Module.................................... 25 2.4.1 Exception handling................................. 26 2.4.2 Verification..................................... 26 2.4.3 Side effects..................................... 27 2.4.4 Debugging...................................... 27 2.4.5 Coding standards.................................. 27 2.4.6 Documentation................................... 27 2.5 Operating System Commands............................... 28 2.6 Object-oriented Programming............................... 29 3 Python Extensions 33 3.1 NumPy........................................... 33 3.1.1 Array constructors................................. 33 3.1.2 Indexing and slicing................................ 34 3.1.3 Views........................................ 34 3.1.4 Array operations.................................. 35 3.1.5 Fancy indexing................................... 35 3.1.6 Input/output functions.............................. 36 3.1.7 Matrix operations................................. 37 3.2 NumPy Modules...................................... 38 3.2.1 Pseudo-random numbers.............................. 38 3.2.2 Linear algebra functions.............................. 38 3.3 Matplotlib.......................................... 38 3.4 Other Extensions...................................... 40 3.4.1 Computer algebra................................. 40 3.4.2 SciPy........................................ 41 4 C Programming 42 4.1 Declarations and Control Structures........................... 42 4.2 Pointers, Arrays, and malloc ............................... 44 4.2.1 Pointers....................................... 44 4.2.2 One-dimensional arrays.............................. 44 4.2.3 Multidimensional arrays.............................. 45 4.2.4 malloc ....................................... 46 4.3 Functions and Programs.................................. 48 4.3.1 Definitions vs. declarations............................ 48 4.3.2 Function pointers.................................. 48 4.3.3 Scope........................................ 49 4.4 Strings and Input/Output................................. 50 4.4.1 Strings........................................ 50 4.4.2 I/O functions.................................... 50 4.5 Structures.......................................... 51 ii 4.5.1 Abstract data types................................ 52 4.5.2 Data structures................................... 54 4.6 Compiling and Debugging................................. 57 4.6.1 Creating dynamically loaded libraries...................... 58 4.6.2 Dynamic loading.................................. 58 4.6.3 Improving performance.............................. 59 4.7 Calling Compiled Code from Python........................... 60 4.7.1 The Python ctypes module............................ 60 4.7.2 The NumPy ctypeslib module.......................... 62 5 Parallel Computing 64 5.1 Computer System Basics.................................. 64 5.1.1 Computer organization.............................. 64 5.1.2 Processes...................................... 65 5.1.3 Python as glue................................... 65 5.2 Distributed Memory Programming............................ 66 5.2.1 MPI......................................... 67 5.2.2 Point-to-point operations............................. 67 5.2.3 Collective operations................................ 69 5.2.4 Grid computing and Condor........................... 69 5.3 Computing on Scholar and PBS Job Submission.................... 70 5.4 Shared Memory Programming............................... 72 5.4.1 POSIX Threads.................................. 72 5.4.2 Cilk Plus...................................... 74 5.4.3 OpenMP...................................... 74 5.4.4 Coprocessors, including graphics processing units................ 75 5.4.5 OpenACC...................................... 76 5.4.6 Python multiprocessing module.......................... 76 6 Survey of Other Topics 78 6.1 Software Development................................... 78 6.1.1 Version control................................... 78 6.1.2 Automated builds................................. 79 6.2 Algorithms......................................... 82 6.2.1 Loop invariants................................... 82 6.2.2 Computational complexity............................. 83 6.2.3 Parallel algorithms................................. 83 6.3 Floating-point Computation................................ 85 6.3.1 Floating-point numbers.............................. 85 6.3.2 Rounding...................................... 86 6.3.3 Floating-point operations............................. 87 6.3.4 Other types of arithmetic............................. 87 6.4 Regular Expressions.................................... 88 iii 6.5 GUI Programming..................................... 90 6.5.1 Tkinter....................................... 91 6.5.2 Web interfaces................................... 91 6.6 Programming Languages.................................. 92 6.6.1 Other scripting languages............................. 92 6.6.2 Computer algebra systems............................. 92 6.6.3 Matlab and Octave................................. 92 6.6.4 R........................................... 93 6.6.5 Julia......................................... 93 6.6.6 Fortran, C, and C++............................... 93 6.7 Data............................................. 94 6.7.1 XML......................................... 94 6.7.2 Relational databases................................ 94 A Functions 95 A.1 Polynomial approximation................................. 95 A.1.1 Polynomial representation............................. 95 A.1.2 Existence and uniqueness............................. 96 A.1.3 Lagrange form................................... 96 A.1.4 Interpolation.................................... 97 A.1.5 Bivariate linear polynomials............................ 97 A.2 Piecewise Polynomial Approximation........................... 99 A.2.1 Piecewise polynomials............................... 99 A.2.2 Multivariate piecewise linear polynomials.................... 100 A.3 Trigonometric Approximation............................... 101 A.3.1 Fast Fourier Transform.............................. 102 B Matrices 104 B.1 Matrix Computations................................... 104 B.1.1 Partitioned matrices................................ 104 B.1.2 Structured matrices................................ 105 B.1.3 Efficient matrix operations............................ 105 B.2 Triangular Factorizations................................. 106 B.2.1 Division by a triangular matrix.......................... 107 B.2.2 LU factorization.................................. 108 B.2.3 Symmetric matrices................................ 109 B.2.4 NumPy and LAPACK functions......................... 109 B.3 Orthogonal Factorizations................................. 111 B.3.1 Full and reduced QR factorizations........................ 112 B.3.2 Singular value decomposition........................... 113 B.3.3 NumPy and LAPACK functions......................... 113 B.4 Spectral Factorizations................................... 115 B.4.1 General matrices.................................. 116 iv B.4.2 Symmetric matrices................................ 117 B.4.3
Recommended publications
  • Opensource Software in Mac OS X V. Zhhuta
    Foss Lviv 2013 191 - Linux VM з Wordpress на Azure під’єднано до SQL-бази в приватному центрі обробки даних. Як бачимо, бізнес Microsoft вже дуже сильно зав'язаний на Open Source! Далі в доповіді будуть розглянуті подробиці інтероперабельності платформ з Linux Server, Apache Hadoop, Java, PHP, Node.JS, MongoDb, і наостанок дізнаємося про цікаві Open Source-розробки Microsoft Research. OpenSource Software in Mac OS X V. Zhhuta UK2 LImIted t/a VPS.NET, [email protected] Max OS X stem from Unix: bSD. It contains a lot of things that are common for Unix systems. Kernel, filesystem and base unix utilities as well as it's own package managers. It's not a secret that Mac OS X has a bSD kernel Darwin. The raw Mac OS X won't provide you with all power of Unix but this could be easily fixed: install package manager. There are 3 package manager: MacPorts, Fink and Homebrew. To dive in OpenSource world of mac os x we would try to install lates version of bash, bash-completion and few other utilities. Where we should start? First of all you need to install on you system dev-tools: Xcode – native development tools that contain GCC and libraries. Next step: bring a GIU – X11 into your system. Starting from Mac OS 10.8 X11 is not included in base-installation and it's need to install Xquartz(http://xquartz.macosforge.org). Now it's time to look closely to package managers MacPorts Site: www.macports.org Latest MacPorts release: 2.1.3 Number of ports: 16740 MacPorts born inside Apple in 2002.
    [Show full text]
  • Xcode Package from App Store
    KH Computational Physics- 2016 Introduction Setting up your computing environment Installation • MAC or Linux are the preferred operating system in this course on scientific computing. • Windows can be used, but the most important programs must be installed – python : There is a nice package ”Enthought Python Distribution” http://www.enthought.com/products/edudownload.php – C++ and Fortran compiler – BLAS&LAPACK for linear algebra – plotting program such as gnuplot Kristjan Haule, 2016 –1– KH Computational Physics- 2016 Introduction Software for this course: Essentials: • Python, and its packages in particular numpy, scipy, matplotlib • C++ compiler such as gcc • Text editor for coding (for example Emacs, Aquamacs, Enthought’s IDLE) • make to execute makefiles Highly Recommended: • Fortran compiler, such as gfortran or intel fortran • BLAS& LAPACK library for linear algebra (most likely provided by vendor) • open mp enabled fortran and C++ compiler Useful: • gnuplot for fast plotting. • gsl (Gnu scientific library) for implementation of various scientific algorithms. Kristjan Haule, 2016 –2– KH Computational Physics- 2016 Introduction Installation on MAC • Install Xcode package from App Store. • Install ‘‘Command Line Tools’’ from Apple’s software site. For Mavericks and lafter, open Xcode program, and choose from the menu Xcode -> Open Developer Tool -> More Developer Tools... You will be linked to the Apple page that allows you to access downloads for Xcode. You wil have to register as a developer (free). Search for the Xcode Command Line Tools in the search box in the upper left. Download and install the correct version of the Command Line Tools, for example for OS ”El Capitan” and Xcode 7.2, Kristjan Haule, 2016 –3– KH Computational Physics- 2016 Introduction you need Command Line Tools OS X 10.11 for Xcode 7.2 Apple’s Xcode contains many libraries and compilers for Mac systems.
    [Show full text]
  • How to Access Python for Doing Scientific Computing
    How to access Python for doing scientific computing1 Hans Petter Langtangen1,2 1Center for Biomedical Computing, Simula Research Laboratory 2Department of Informatics, University of Oslo Mar 23, 2015 A comprehensive eco system for scientific computing with Python used to be quite a challenge to install on a computer, especially for newcomers. This problem is more or less solved today. There are several options for getting easy access to Python and the most important packages for scientific computations, so the biggest issue for a newcomer is to make a proper choice. An overview of the possibilities together with my own recommendations appears next. Contents 1 Required software2 2 Installing software on your laptop: Mac OS X and Windows3 3 Anaconda and Spyder4 3.1 Spyder on Mac............................4 3.2 Installation of additional packages.................5 3.3 Installing SciTools on Mac......................5 3.4 Installing SciTools on Windows...................5 4 VMWare Fusion virtual machine5 4.1 Installing Ubuntu...........................6 4.2 Installing software on Ubuntu....................7 4.3 File sharing..............................7 5 Dual boot on Windows8 6 Vagrant virtual machine9 1The material in this document is taken from a chapter in the book A Primer on Scientific Programming with Python, 4th edition, by the same author, published by Springer, 2014. 7 How to write and run a Python program9 7.1 The need for a text editor......................9 7.2 Spyder................................. 10 7.3 Text editors.............................. 10 7.4 Terminal windows.......................... 11 7.5 Using a plain text editor and a terminal window......... 12 8 The SageMathCloud and Wakari web services 12 8.1 Basic intro to SageMathCloud...................
    [Show full text]
  • Ginga Documentation Release 2.5.20160420043855
    Ginga Documentation Release 2.5.20160420043855 Eric Jeschke May 05, 2016 Contents 1 About Ginga 1 2 Copyright and License 3 3 Requirements and Supported Platforms5 4 Getting the source 7 5 Building and Installation 9 5.1 Detailed Installation Instructions for Ginga...............................9 6 Documentation 15 6.1 What’s New in Ginga?.......................................... 15 6.2 Ginga Quick Reference......................................... 19 6.3 The Ginga FAQ.............................................. 22 6.4 The Ginga Viewer and Toolkit Manual................................. 25 6.5 Reference/API.............................................. 87 7 Bug reports 107 8 Developer Info 109 9 Etymology 111 10 Pronunciation 113 11 Indices and tables 115 Python Module Index 117 i ii CHAPTER 1 About Ginga Ginga is a toolkit designed for building viewers for scientific image data in Python, visualizing 2D pixel data in numpy arrays. It can view astronomical data such as contained in files based on the FITS (Flexible Image Transport System) file format. It is written and is maintained by software engineers at the Subaru Telescope, National Astronomical Observatory of Japan. The Ginga toolkit centers around an image display class which supports zooming and panning, color and intensity mapping, a choice of several automatic cut levels algorithms and canvases for plotting scalable geometric forms. In addition to this widget, a general purpose “reference” FITS viewer is provided, based on a plugin framework. A fairly complete set of “standard” plugins are provided for features that we expect from a modern FITS viewer: panning and zooming windows, star catalog access, cuts, star pick/fwhm, thumbnails, etc. 1 Ginga Documentation, Release 2.5.20160420043855 2 Chapter 1.
    [Show full text]
  • About Basictex-2021
    About BasicTeX-2021 Richard Koch January 2, 2021 1 Introduction Most TeX distributions for Mac OS X are based on TeX Live, the reference edition of TeX produced by TeX User Groups across the world. Among these is MacTeX, which installs the full TeX Live as well as front ends, Ghostscript, and other utilities | everything needed to use TeX on the Mac. To obtain it, go to http://tug.org/mactex. 2 Basic TeX BasicTeX (92 MB) is an installation package for Mac OS X based on TeX Live 2021. Unlike MacTeX, this package is deliberately small. Yet it contains all of the standard tools needed to write TeX documents, including TeX, LaTeX, pdfTeX, MetaFont, dvips, MetaPost, and XeTeX. It would be dangerous to construct a new distribution by going directly to CTAN or the Web and collecting useful style files, fonts and so forth. Such a distribution would run into support issues as the creators move on to other projects. Luckily, the TeX Live install script has its own notion of \installation packages" and collections of such packages to make \installation schemes." BasicTeX is constructed by running the TeX Live install script and choosing the \small" scheme. Thus it is a subset of the full TeX Live with exactly the TeX Live directory structure and configuration scripts. Moreover, BasicTeX contains tlmgr, the TeX Live Manager software introduced in TeX Live 2008, which can install additional packages over the network. So it will be easy for users to add missing packages if needed. Since it is important that the install package come directly from the standard TeX Live distribution, I'm going to explain exactly how I installed TeX to produce the install package.
    [Show full text]
  • Pyconfr 2014 1 / 105 Table Des Matières Bienvenue À Pyconfr 2014
    PyconFR 2014 1 / 105 Table des matières Bienvenue à PyconFR 2014...........................................................................................................................5 Venir à PyconFR............................................................................................................................................6 Plan du campus..........................................................................................................................................7 Bâtiment Thémis...................................................................................................................................7 Bâtiment Nautibus................................................................................................................................8 Accès en train............................................................................................................................................9 Accès en avion........................................................................................................................................10 Accès en voiture......................................................................................................................................10 Accès en vélo...........................................................................................................................................11 Plan de Lyon................................................................................................................................................12
    [Show full text]
  • Python Guide Documentation Release 0.0.1
    Python Guide Documentation Release 0.0.1 Kenneth Reitz February 19, 2018 Contents 1 Getting Started with Python 3 1.1 Picking an Python Interpreter (3 vs. 2).................................3 1.2 Properly Installing Python........................................5 1.3 Installing Python 3 on Mac OS X....................................6 1.4 Installing Python 3 on Windows.....................................8 1.5 Installing Python 3 on Linux.......................................9 1.6 Installing Python 2 on Mac OS X.................................... 10 1.7 Installing Python 2 on Windows..................................... 12 1.8 Installing Python 2 on Linux....................................... 13 1.9 Pipenv & Virtual Environments..................................... 14 1.10 Lower level: virtualenv.......................................... 17 2 Python Development Environments 21 2.1 Your Development Environment..................................... 21 2.2 Further Configuration of Pip and Virtualenv............................... 26 3 Writing Great Python Code 29 3.1 Structuring Your Project......................................... 29 3.2 Code Style................................................ 40 3.3 Reading Great Code........................................... 49 3.4 Documentation.............................................. 50 3.5 Testing Your Code............................................ 53 3.6 Logging.................................................. 58 3.7 Common Gotchas............................................ 60 3.8 Choosing
    [Show full text]
  • Prof. Jim Crutchfield Nonlinear Physics— Modeling Chaos
    Nonlinear Physics— Modeling Chaos & Complexity Prof. Jim Crutchfield Physics Department & Complexity Sciences Center University of California, Davis cse.ucdavis.edu/~chaos Tuesday, March 30, 2010 1 Mechanism Revived Deterministic chaos Nature actively produces unpredictability What is randomness? Where does it come from? Specific mechanisms: Exponential divergence of states Sensitive dependence on parameters Sensitive dependence on initial state ... Tuesday, March 30, 2010 2 Brief History of Chaos Discovery of Chaos: 1890s, Henri Poincaré Invents Qualitative Dynamics Dynamics in 20th Century Develops in Mathematics (Russian & Europe) Exiled from Physics Re-enters Science in 1970s Experimental tests Simulation Flourishes in Mathematics: Ergodic theory & foundations of Statistical Mechanics Topological dynamics Catastrophe/Singularity theory Pattern formation/center manifold theory ... Tuesday, March 30, 2010 3 Discovering Order in Chaos Problem: No “closed-form” analytical solution for predicting future of nonlinear, chaotic systems One can prove this! Consequence: Each nonlinear system requires its own representation Pattern recognition: Detecting what we know Ultimate goal: Causal explanation What are the hidden mechanisms? Pattern discovery: Finding what’s truly new Tuesday, March 30, 2010 4 Major Roadblock to the Scientific Algorithm No “closed-form” analytical solutions Baconian cycle of successively refining models broken Solution: Qualitative dynamics: “Shape” of chaos Computing Tuesday, March 30, 2010 5 Logic of the Course Two
    [Show full text]
  • Introduction to Python ______
    Center for Teaching, Research and Learning Research Support Group American University, Washington, D.C. Hurst Hall 203 [email protected] (202) 885-3862 Introduction to Python ___________________________________________________________________________________________________________________ Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. It is used for its readability and productivity. WORKSHOP OBJECTIVE: This workshop is designed to give a basic understanding of Python, including object types, Python operations, Python module, basic looping, function, and control flows. By the end of this workshop you will: • Know how to install Python on your own computer • Understand the interface and language of Python • Be familiar with Python object types, operations, and modules • Create loops and functions • Load and use Python packages (libraries) • Use Python both as a powerful calculator and to write software that accept inputs and produce conditional outputs. NOTE: Many of our examples are from the Python website’s tutorial, http://docs.python.org/py3k/contents.html. We often include references to the relevant chapter section, which you could consult to get greater depth on that topic. I. Installation and starting Python Python is distributed free from the website http://www.python.org/. There are distributions for Windows, Mac, Unix, and Linux operating systems. Use http://python.org/download to find these distribution files for easy installation. The latest version of Python is version 3.1. Once installed, you can find the Python3.1 folder in “Programs” of the Windows “start” menu. For computers on campus, look for the “Math and Stats Applications” folder.
    [Show full text]
  • Webroot Secureanywhere® Business – DNS Protection Apache License 2.0 • Aws-Sdk-Net Copyright © Amazon.Com, Inc. Apache
    Webroot SecureAnywhere® Business – DNS Protection Apache License 2.0 • aws-sdk-net Copyright © Amazon.com, Inc. Apache License Version 2.0, January 2004 TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. “License” shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. “Licensor” shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. “Legal Entity” shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, “control” means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. “You” (or “Your”) shall mean an individual or Legal Entity exercising permissions granted by this License. “Source” form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. “Object” form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. “Work” shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
    [Show full text]
  • Release 2.7.1 Andrew Collette and Contributors
    h5py Documentation Release 2.7.1 Andrew Collette and contributors Mar 08, 2018 Contents 1 Where to start 3 2 Other resources 5 3 Introductory info 7 4 High-level API reference 15 5 Advanced topics 35 6 Meta-info about the h5py project 51 i ii h5py Documentation, Release 2.7.1 The h5py package is a Pythonic interface to the HDF5 binary data format. HDF5 lets you store huge amounts of numerical data, and easily manipulate that data from NumPy. For example, you can slice into multi-terabyte datasets stored on disk, as if they were real NumPy arrays. Thousands of datasets can be stored in a single file, categorized and tagged however you want. Contents 1 h5py Documentation, Release 2.7.1 2 Contents CHAPTER 1 Where to start • Quick-start guide • Installation 3 h5py Documentation, Release 2.7.1 4 Chapter 1. Where to start CHAPTER 2 Other resources • Python and HDF5 O’Reilly book • Ask questions on the mailing list at Google Groups • GitHub project 5 h5py Documentation, Release 2.7.1 6 Chapter 2. Other resources CHAPTER 3 Introductory info 3.1 Quick Start Guide 3.1.1 Install With Anaconda or Miniconda: conda install h5py With Enthought Canopy, use the GUI package manager or: enpkg h5py With pip or setup.py, see Installation. 3.1.2 Core concepts An HDF5 file is a container for two kinds of objects: datasets, which are array-like collections of data, and groups, which are folder-like containers that hold datasets and other groups. The most fundamental thing to remember when using h5py is: Groups work like dictionaries, and datasets work like NumPy arrays The very first thing you’ll need to do is create a new file: >>> import h5py >>> import numpy as np >>> >>> f= h5py.File("mytestfile.hdf5","w") The File object is your starting point.
    [Show full text]
  • MAC OSX Tips
    Table of Contents MAC OSX tips keys linux-like environment and FINK MacPorts tips Build from source VS use binaries Useful commands MAC OSX tips Overview Some tips and hints on MacOSX usage: tame your keyboard and go ahead with compilation. edit 1414069126 [MAC OSX tips] section 1-168 1/8 documentation:tools:macosx_tips Edit keys quick copy and paste with CMD touch + c and + v key pipe | : alt + Maj + l tilde ~: alt +n square brackets [ or ]: alt + Maj + ( or ) antislash \:alt + maj + : edit 1414069126 [keys] section 169-383 documentation:tools:macosx_tips Edit linux-like environment and FINK 2/8 What is Fink? Fink is a distribution of Unix Open Source software for Mac OS X and Darwin. It brings a wide range of free command-line and graphical software developed for Linux and similar operating systems to your Mac. Quick Start Download the installer disk image: Fink 0.9.0 Binary Installer Double-click ?Fink-0.9.0-XYZ-Installer.dmg? to mount the disk image, then double-click the ?Fink 0.9.0 XYZ Installer.pkg? package inside. Follow the instructions on screen. At the end of the installation, the pathsetup utility will be launched. You will be asked for permission before your shell's configuration files are edited. When the utility has finished, you are set to go! Using the fink tool The fink tool uses several suffix commands to work on packages from the source distribution. Some of them need at least one package name, but can handle several package names at once. You can specify just the package name (e.g.
    [Show full text]