From d30a9b7aa9cae9659a5d1e849a99929f3f7557aa Mon Sep 17 00:00:00 2001 From: Marco Dalla Tiezza Date: Mon, 2 Sep 2019 00:17:32 +0200 Subject: [PATCH] GLIBC minimum requirements, ACF details on variable values --- README.md | 13 +++++++++++-- spec_files/README.md | 2 ++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 69a6649..ca8cdd2 100644 --- a/README.md +++ b/README.md @@ -28,10 +28,17 @@ Artemis 3 is entirely written in Python, so if you already have Python 3.7.0+ in **If you don't know what you want or you are not sure where to look, this is for you.** Basically, this is the easiest, smooth, and clean way to run Artemis 3. A Python installation is not required. -For more information, follow [the main page of Artemis 3](https://aresvalley.com/artemis/) (detailed documentation at the end of the main page) +For more information, follow [the main page of Artemis 3](https://aresvalley.com/artemis/) (detailed documentation at the end of the main page). + +**Requirements:** +- Windows 7/8/8.1/10 +- Linux: Ubuntu 16.04+, Mint 18+, Fedora 24+ and many other. **You need at least version 2.23 of the GLIBC system library** ([details](https://github.com/AresValley/Artemis/tree/master/spec_files)) +- macOS ### Run from source code -Run the software from the source code with the Python interpreter is the simplest and natural way to run Artemis 3. Requirements: +Run the software from the source code with the Python interpreter is the simplest and natural way to run Artemis 3. + +**Requirements:** - Python (ver. 3.7.0+) - Python libraries (in `requirements/requirements.txt`) @@ -117,6 +124,8 @@ The database (db.csv) is directly extracted from sigidwiki.com with a DB parser ... ID Code * 60 - edacs48 ; 30 - edacs96 ``` +**Special case:** variable ACFs are allowed and a brief explanation can be reported instead of ACF Value. A nice example is the * [SSTV](https://www.sigidwiki.com/wiki/Slow-Scan_Television_(SSTV) "SSTV") transmission where the ACF is directly related to the number of lines per minute. + ### Multiple Items fields (Location, Modulation) The necessity to manage a multiple Location/Modulation search pushed us to implement a fictitious 'secondary delimiter' chosen to be the `;` character. For instance: diff --git a/spec_files/README.md b/spec_files/README.md index aa018f3..619f87b 100644 --- a/spec_files/README.md +++ b/spec_files/README.md @@ -14,6 +14,8 @@ Artemis 3 .spec files are used by the package **pyinstaller** (https://www.pyins **IMPORTANT:** *To generate the standalone and the one-dir package, you must use an operating system that coincides with the target one (pyinstaller doesn't allow cross-compilation).* +**IMPORTANT (LINUX COMPILING):** *The executable that PyInstaller builds is not fully static, in that it still depends on the system libc. **Under Linux, the ABI of GLIBC is backward compatible, but not forward compatible. So if you link against a newer GLIBC, you can't run the resulting executable on an older system**. The supplied binary bootloader should work with older GLIBC. However, the libpython.so and other dynamic libraries still depend on the newer GLIBC. The solution is to compile the Python interpreter with its modules (and also probably bootloader) on the oldest system you have around so that it gets linked with the oldest version of GLIBC.* (Source: PyInstaller) + ## Package Building (standalone aka one-file, high portability, **suggested**) 1. Download a fresh copy of the git repository. 2. Choose the target OS in `spec_files` folder and copy the whole content (except the Artemis_onedir.spec file) into `src`