{"id":17054358,"url":"https://github.com/uduse/sage","last_synced_at":"2025-03-23T05:45:07.809Z","repository":{"id":90617121,"uuid":"61318268","full_name":"uduse/Sage","owner":"uduse","description":null,"archived":false,"fork":false,"pushed_at":"2020-07-24T12:28:53.000Z","size":85784,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-14T15:54:34.568Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/uduse.png","metadata":{"files":{"readme":"README.txt","changelog":null,"contributing":null,"funding":null,"license":"COPYING.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-06-16T18:55:15.000Z","updated_at":"2019-01-11T04:41:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"683c6efa-5a29-4d74-83c2-954a354ce0eb","html_url":"https://github.com/uduse/Sage","commit_stats":null,"previous_names":[],"tags_count":702,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uduse%2FSage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uduse%2FSage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uduse%2FSage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uduse%2FSage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uduse","download_url":"https://codeload.github.com/uduse/Sage/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245061384,"owners_count":20554563,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-14T10:14:39.241Z","updated_at":"2025-03-23T05:45:07.778Z","avatar_url":"https://github.com/uduse.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"    Sage: Open Source Mathematical Software\n\n       \"Creating a Viable Open Source Alternative to\n          Magma, Maple, Mathematica, and MATLAB\"\n\n    Copyright (C) 2005-2014 The Sage Development Team\n\n        http://www.sagemath.org\n\nThe Sage Library is GPLv2+, included packages have compatible OSS\nlicenses (see COPYING.txt). Over 400 people have contributed code to\nSage. Please see the following web page for a list:\n\n    http://www.sagemath.org/development-map.html\n\nIn many cases, documentation for modules and functions list the\nauthors.\n\n\nGETTING STARTED\n---------------\n\nThis README.txt contains build instructions for Sage. If you downloaded\na binary, you do not need to do anything; just execute:\n\n    ./sage\n\nfrom the command line. If you downloaded the sources, please read below\non how to build Sage and work around common issues.\n\nIf you have questions or encounter problems, please do not hesitate\nto email the sage-support mailing list:\n\n    http://groups.google.com/group/sage-support\n\n\nSUPPORTED PLATFORMS\n-------------------\n\nSage fully supports several Linux distributions, recent versions of\nMac OS X, Windows (using virtualization), as well as a number of\nSolaris and OpenSolaris releases.\n\nThere should be no serious bugs in an officially released version of\nSage on any of the fully supported platforms, but any major issues with\na particular release will be documented on an errata page:\n\n    http://wiki.sagemath.org/errata\n\nPorts are in progress to some other, less common platforms. The list of\nsupported platforms and their current statuses are given at the\nfollowing web page:\n\n    http://wiki.sagemath.org/SupportedPlatforms\n\nIf you are interested in helping port Sage to a new platform, please let\nus know at the sage-devel mailing list:\n\n    http://groups.google.com/group/sage-devel\n\n\nQUICK INSTRUCTIONS TO BUILD FROM SOURCE\n---------------------------------------\n\nThe following steps briefly outline the process of building Sage from\nsource. More detailed instructions, including how to build faster on\nmulticore machines, are contained later in this README and in the\nInstallation Guide:\n\n    http://www.sagemath.org/doc/installation\n\n1. Make sure you have the dependencies and 5 GB of free disk space.\n\n   All Linux versions: gcc, make, m4, perl, ranlib, and tar.\n   Debian or Ubuntu systems: the dpkg-dev package.\n   Fedora or RedHat systems: the perl-ExtUtils-MakeMaker package.\n   (install these using your package manager)\n\n   OS X: Xcode. Make sure you have installed the most recent version\n   of Xcode. With recent versions of OS X (OS X Lion or later), you\n   can install Xcode for free from the App Store. For pre-Lion\n   versions of OS X, you can download Xcode from\n   http://developer.apple.com/downloads/.\n\n   With OS X, you also need to install the \"command line tools\". When\n   using OS X Mavericks, after installing Xcode, run this command from\n   a terminal window:\n\n      xcode-select --install\n\n   Then click \"Install\" in the pop-up window.\n\n   When using OS X Mountain Lion or earlier, you need to install the\n   command line tools from Xcode: run Xcode; then from the File\n   menu, choose \"Preferences\", then the \"Downloads\" tab, and then\n   \"Install\" the Command Line Tools.\n\n   Other platforms: See detailed instructions below.\n\n2. Extract the tarball:\n\n       tar xvf sage-*.tar\n\n3. cd into the Sage directory and type make:\n\n       cd sage-*/\n       make\n\n   That's it! Everything is automatic and non-interactive. The build\n   should work fine on all fully supported platforms. If it does not, we\n   want to know!\n\n\nENVIRONMENT VARIABLES\n---------------------\n\nThere are a lot of environment variables which control the install\nprocess of Sage, see:\n\n    http://sagemath.org/doc/installation/source.html#environment-variables\n\n\nIMPLEMENTATION\n--------------\n\nSage has significant components written in the following languages:\nC/C++, Python, Cython, Lisp, and Fortran. Lisp (ECL), Python, and Cython\nare built as part of Sage and a GNU Fortran (gfortran) binary is\nincluded (OS X only), so you do not need them in order to build Sage.\n\n\nMORE DETAILED INSTRUCTIONS TO BUILD FROM SOURCE\n-----------------------------------------------\n\n1. Make sure you have about 5 GB of free disk space.\n\n2. Install build dependencies.\n\n   Linux: See quick instructions above.\n\n   OS X: Make sure you have XCode version \u003e= 2.4, i.e. \"gcc -v\" should\n   output build \u003e= 5363. If you don't, go to:\n\n       http://developer.apple.com/\n\n   sign up, and download the free XCode package. Only OS X \u003e= 10.4 is\n   supported.\n\n   Solaris and OpenSolaris: Building Sage on these platforms is more\n   tricky than on Linux or OS X. For details on how to build Sage on\n   these platforms, see:\n\n       http://wiki.sagemath.org/solaris\n\n   Windows: Download and install VirtualBox, and then download the\n   Sage virtual appliance. For details, see:\n\n       http://wiki.sagemath.org/SageAppliance\n\n   NOTE: On some operating systems, it might be necessary to install\n   gas/as, gld/ld, gnm/nm. On most platforms, these are automatically\n   installed when you install the programs listed above.\n\n3. Extract the Sage source tarball and cd into a directory with no\n   spaces in it. If you have a machine with 4 processors, say, type\n   the following to configure the build script to perform a parallel\n   compilation of Sage using 4 jobs:\n\n       export MAKE=\"make -j4\"\n\n   (With 4 processors, you might also consider \"-j5\" or \"-j6\" --\n   building with more jobs than CPU cores can speed things up.)\n   You might in addition pass a \"-l\" flag to \"make\": this\n   sets a load limit, so for example if you execute\n\n       export MAKE=\"make -j4 -l5.5\"\n\n   then \"make\" won't start more than one job at a time if the system\n   load average is above 5.5.  See\n   http://www.gnu.org/software/make/manual/make.html#Options-Summary\n   and http://www.gnu.org/software/make/manual/make.html#Parallel.\n\n   If you want to run the test suite for each individual spkg as it is\n   installed, type:\n\n       export SAGE_CHECK=\"yes\"\n\n   before starting the Sage build. This will run each test suite and\n   will raise an error if any failures occur. Python's test suite has\n   been disabled by default, because it causes failures on most\n   systems. To renable the Python testsuite, set the environment\n   variable SAGE_CHECK_PACKAGES to \"python\".\n\n   To start the build, type:\n\n       make\n\n4. Wait about 20 minutes to 14 days, depending on your computer (it took\n   about 2 weeks to build Sage on the T-Mobile G1 Android cell phone).\n\n5. Type \"./sage\" to try it out.\n\n6. OPTIONAL: Type \"make ptest\" to test all examples in the documentation\n   (over 200,000 lines of input!) -- this takes from 10 minutes to\n   several hours. Don't get too disturbed if there are 2 to 3 failures,\n   but always feel free to email the section of logs/ptest.log that\n   contains errors to the sage-support mailing list. If there are\n   numerous failures, there was a serious problem with your build.\n\n7. The HTML version of the documentation is built\n   during the compilation process of Sage and resides in the directory:\n\n       $SAGE_ROOT/src/doc/output/html/\n\n   OPTIONAL: If you want to build the PDF version (requires LaTeX) of\n   the documentation, run:\n\n       make doc-pdf\n\n8. OPTIONAL: It is highly recommended that you install the optional GAP\n   database by typing:\n\n       ./sage --optional\n\n   then installing (with \"./sage -i\") the package whose name begins with\n   database_gap. This will download the package from\n   sage.math.washington.edu and install it. While you're at it, you\n   might install other databases of interest to you.\n\n9. OPTIONAL: It is recommended that you have both LaTeX and the\n   ImageMagick tools (e.g. the \"convert\" command) installed since some\n   plotting functionality benefits from it.\n\n10. OPTIONAL: Read this if you are intending to run a Sage notebook\n    server for multiple users. For security (i.e., to run\n    \"notebook(secure=True)\") you want to access the server using the\n    HTTPS protocol. First, install OpenSSL and the OpenSSL development\n    headers on your system if they are not already installed. Then\n    install pyOpenSSL by building Sage and then typing\n\n        ./sage -i pyopenssl\n\n    Note that this command requires internet access.  Alternatively,\n    \"make ssl\" builds Sage and installs pyOpenSSL.\n\n\nPROBLEMS\n--------\n\nIf you have problems building Sage, check the Sage Installation Guide,\nand also note the following.  Each separate component of Sage is\ncontained in an spkg; these are stored in spkg/standard/.  As each one\nis built, a build log is stored in logs/pkgs/, so you can browse these\nto find error messages.  If an spkg fails to build, the whole build\nprocess will stop soon after, so check the most recent log files\nfirst, or run\n\n   grep -li \"^Error\" logs/pkgs/*\n\nfrom the top-level Sage directory to find log files with error\nmessages in them.  Send (a small part of) the relevant log file to the\nsage-devel mailing list, making sure to include at least some of the\nerror messages; probably someone there will have some helpful\nsuggestions.\n\n\nSUPPORTED COMPILERS\n-------------------\n\nSage includes a GCC (GNU Compiler Collection) package. In order to\nbuild Sage, you need a C compiler which can build GCC and its\nprerequisites. gcc version 4.0.1 or later should probably work. On\nSolaris or OpenSolaris, building with the Sun compiler should also work.\n\nThe GCC package in Sage is not always installed. It is determined\nautomatically whether it needs to be installed. You can override this\nby setting the environment variable SAGE_INSTALL_GCC=yes (to force\ninstallation of GCC) or SAGE_INSTALL_GCC=no (to disable installation of\nGCC). If you don't want to install GCC, you need to have recent\nversions of gcc, g++ and gfortran; moreover, the versions must be equal.\n\nThere are some known problems with old assemblers, in particular when\nbuilding the ECM package. You should ensure that your assembler\nunderstands all instructions for your processor. On Linux, this means\nyou need a recent version of binutils; on OS X you need a recent version\nof XCode.\n\n\nDIRECTORY LAYOUT\n----------------\n\nSimplified directory layout (only essential files/directories):\n\nSAGE_ROOT                 Root directory (sage-x.y.z in the Sage tarball)\n+-- build\n|   +-- deps              Dependency information of packages\n|   +-- pkgs              Every package is a subdirectory here\n|       +-- atlas\n|       ...\n|       +-- zn_poly\n+-- COPYING.txt           Copyright information\n+-- local                 Compiled packages are installed here\n|   +-- bin               Executables\n|   +-- include           C/C++ headers\n|   +-- lib               Shared libraries\n|   +-- share             Databases, architecture-independent data\n|   +-- var\n|       +-- sage          List of installed packages\n|       +-- tmp           Temporary files when building Sage\n+-- logs \n|   +-- dochtml.log       Log of the documentation build\n|   +-- install.log       Full install log\n|   +-- pkgs              Build logs of individual packages\n|       +--- atlas-3.10.1.p7.log\n|       ...\n|       +--- zn_poly-0.9.p11.log\n+-- Makefile              Running \"make\" uses this file\n+-- README.txt            This file\n+-- sage                  Script to start Sage\n+-- src                   All of the Sage source (not third-party packages)\n|   +-- bin               Scripts that Sage uses internally\n|   +-- doc               Sage documentation\n|   +-- sage              The Sage library source code\n+-- upstream              Source tarballs of packages\n|   +-- atlas-3.10.1.tar.bz2\n|   ...\n|   +-- zn_poly-0.9.tar.bz2\n+-- VERSION.txt\n\nFor more details, see:\n\n    http://sagemath.org/doc/developer/coding_basics.html#files-and-directory-structure\n\n\nRELOCATION\n----------\n\nYou *should* be able to move the sage-x.y.z/ directory anywhere you\nwant. If you copy the sage script or make a symbolic link to it, you\nshould modify the script to reflect this (as instructed at the top of\nthe script). It is best if the path to Sage does not have any spaces in\nit.\n\nFor a system-wide installation, as root you can move the sage-x.y.z/\ndirectory to a system-wide directory. Afterwards, you need to start up\nSage as root at least once prior to using the system-wide Sage as a\nnormal user. See the Installation Guide for further information on\nperforming a system-wide installation:\n\n    http://www.sagemath.org/doc/installation/source.html#installation-in-a-multiuser-environment\n\nIf you find anything that doesn't work correctly after you moved the\ndirectory, please email the sage-support mailing list.\n\n\nREDISTRIBUTION\n--------------\n\nYour local Sage install is almost exactly the same as any \"developer\"\ninstall. You can make changes to documentation, source, etc., and very\neasily package the complete results up for redistribution just like we\ndo.\n\n1. To make your own source tarball of Sage, type:\n\n       sage --sdist\n\n2. To make a binary distribution with your currently installed packages,\n   type:\n\n       sage --bdist\n\n3. To make a binary that will run on the widest range of target\n   machines, set the SAGE_FAT_BINARY environment variable to \"yes\"\n   before building Sage:\n\n       export SAGE_FAT_BINARY=\"yes\"\n       make distclean \u0026\u0026 make\n       ./sage --bdist\n\nIn all cases, the result is placed in the directory \"$SAGE_ROOT/dist/\".\n\n\nCHANGES TO INCLUDED SOFTWARE\n----------------------------\n\nAll software included with Sage is copyrighted by the respective authors\nand released under an open source license that is \"GPL version 3 or\nlater\" compatible. See the file COPYING.txt for more details.\n\nSources are in unmodified (as far as possible) tarballs in the\n\"$SAGE_ROOT/upstream\" directory. The remaining description, version\ninformation, patches, and build scripts are in the accompanying\n\"$SAGE_ROOT/build/pkgs/\u003cpackagename\u003e\" directory. This directory is\npart of the Sage git repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuduse%2Fsage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuduse%2Fsage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuduse%2Fsage/lists"}