Syntax Errors in helper.py

(Antonio Grazioli) #1

I started upgrading my plugins to v1, following this:
https://vcvrack.com/manual/Migrate1.html
I am stuck at the beginning

I am using

python helper.py createmodule Autodafe

but always get this:

File “helper.py”, line 25
str = input(f"{prompt} [{default}]: ")
^
SyntaxError: invalid syntax

(Andrew Belt) #2

Are you using Python 2 or 3? The script requires 3.

(Antonio Grazioli) #3

…mmmm how do I find out? I am on a Mac …

(Antonio Grazioli) #4

OK found out:

python --version

Python 2.7.10

(Andrew Belt) #5

Okay, install Python 3 (with brew or something) and it should work.

(Leodardo) #6

Not completely correct, on Python 3.5.x the error still persists. So (as the helper script states) the minimum version is 3.6

(ZwergNase) #7

MSYS2 offers several Python versions. Which one should I install?
We already established that it should be Python3, but then I still have to choose between official and MINGW builds and then between 32 and 64 bit versions.

Sorry if I’m asking something obvious, but I’m neither savvy with Python nor with MSYS/pacman.

(Andrew Belt) #8

The MSYS2 version should work fine.

(ZwergNase) #9

OK, but my question is which one? 4 to choose from…

(Andrew Belt) #10

I’m not at my Windows computer right now, but I think the package is called python.

(David O'Rourke) #11

version 3.5.1 seems to be the highest version of python3 on Ubuntu 16.04

(Andrew Belt) #12

Ubuntu 16.04 is only needed to build Linux plugins that link to glibc <2.23.
In Rack v1, you can add

FLAGS += -include force_link_glibc_2.23.h

to try to force glibc <2.23 regardless of your installed version of glibc. This isn’t included by default is because it fails in a few cases, such as when some newer libstdc++ symbols are used, or when dlopen is used in your plugin.

I will soon officially drop support for building Rack itself in Ubuntu 16.04.