GLIBC minimum requirements, ACF details on variable values

This commit is contained in:
Marco Dalla Tiezza
2019-09-02 00:17:32 +02:00
parent d37c8e96d6
commit d30a9b7aa9
2 changed files with 13 additions and 2 deletions

View File

@@ -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.** **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. 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 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 (ver. 3.7.0+)
- Python libraries (in `requirements/requirements.txt`) - 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 ... 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) ### 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: The necessity to manage a multiple Location/Modulation search pushed us to implement a fictitious 'secondary delimiter' chosen to be the `;` character. For instance:

View File

@@ -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:** *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**) ## Package Building (standalone aka one-file, high portability, **suggested**)
1. Download a fresh copy of the git repository. 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` 2. Choose the target OS in `spec_files` folder and copy the whole content (except the Artemis_onedir.spec file) into `src`