emscripten-core / emsdk

Emscripten SDK
http://emscripten.org
Other
2.92k stars 662 forks source link

Uninstallation process is weird #1318

Open vault-thirteen opened 7 months ago

vault-thirteen commented 7 months ago
D:\Temp\1\emsdk>emsdk uninstall
Syntax error. Call 'emsdk uninstall <tool name>'. Call 'emsdk list' to obtain a list of available tools.
D:\Temp\1\emsdk>emsdk list

The *recommended* precompiled SDK download is 3.1.50 (2ce4170cef5ce46f337f9fd907b614a8db772c7d).

To install/activate it use:
         latest

This is equivalent to installing/activating:
         3.1.50             INSTALLED

All recent (non-legacy) installable versions are:
         3.1.50    INSTALLED
         3.1.50-asserts
         3.1.49
         3.1.49-asserts
         3.1.48
         3.1.48-asserts
         3.1.47
         3.1.47-asserts
         3.1.46
         3.1.46-asserts
         3.1.45
         3.1.45-asserts
         3.1.44
         3.1.44-asserts
         3.1.43
         3.1.43-asserts
         3.1.42
         3.1.42-asserts
         3.1.41
         3.1.41-asserts
         3.1.40
         3.1.40-asserts
         3.1.39
         3.1.39-asserts
         3.1.38
         3.1.38-asserts
         3.1.37
         3.1.37-asserts
         3.1.36
         3.1.36-asserts
         3.1.35
         3.1.35-asserts
         3.1.34
         3.1.34-asserts
         3.1.33
         3.1.33-asserts
         3.1.32
         3.1.32-asserts
         3.1.31
         3.1.31-asserts
         3.1.30
         3.1.30-asserts
         3.1.29
         3.1.29-asserts
         3.1.28
         3.1.28-asserts
         3.1.27
         3.1.27-asserts
         3.1.26
         3.1.26-asserts
         3.1.25
         3.1.25-asserts
         3.1.24
         3.1.24-asserts
         3.1.23
         3.1.23-asserts
         3.1.22
         3.1.22-asserts
         3.1.21
         3.1.21-asserts
         3.1.20
         3.1.20-asserts
         3.1.19
         3.1.19-asserts
         3.1.18
         3.1.18-asserts
         3.1.17
         3.1.17-asserts
         3.1.16
         3.1.16-asserts
         3.1.15
         3.1.15-asserts
         3.1.14
         3.1.14-asserts
         3.1.13
         3.1.13-asserts
         3.1.12
         3.1.12-asserts
         3.1.11
         3.1.11-asserts
         3.1.10
         3.1.10-asserts
         3.1.9
         3.1.9-asserts
         3.1.8
         3.1.8-asserts
         3.1.7
         3.1.7-asserts
         3.1.6
         3.1.6-asserts
         3.1.5
         3.1.5-asserts
         3.1.4
         3.1.4-asserts
         3.1.3
         3.1.3-asserts
         3.1.2
         3.1.2-asserts
         3.1.1
         3.1.1-asserts
         3.1.0
         3.1.0-asserts
         3.0.1
         3.0.1-asserts
         3.0.0
         3.0.0-asserts
         2.0.34
         2.0.33
         2.0.32
         2.0.31
         2.0.31-asserts
         2.0.30
         2.0.30-asserts
         2.0.29
         2.0.29-lto
         2.0.28
         2.0.28-lto
         2.0.27
         2.0.27-lto
         2.0.26
         2.0.26-lto
         2.0.25
         2.0.24
         2.0.23
         2.0.23-lto
         2.0.22
         2.0.21
         2.0.20
         2.0.20-lto
         2.0.19
         2.0.19-lto
         2.0.18
         2.0.17
         2.0.16
         2.0.15
         2.0.14
         2.0.13
         2.0.12
         2.0.11
         2.0.10
         2.0.9
         2.0.8
         2.0.7
         2.0.6
         2.0.5
         2.0.4
         2.0.3
         2.0.2
         2.0.1
         2.0.0
         1.40.1
         1.40.0
         1.39.20
         1.39.19
         1.39.18
         1.39.17
         1.39.16
         1.39.15
         1.39.14
         1.39.13
         1.39.12
         1.39.11
         1.39.10
         1.39.9
         1.39.8
         1.39.7
         1.39.6
         1.39.5
         1.39.4
         1.39.3
         1.39.2
         1.39.1
         1.39.0
         1.38.48
         1.38.47
         1.38.46
         1.38.45
         1.38.44
         1.38.43
         1.38.42
         1.38.41
         1.38.40
         1.38.39
         1.38.38
         1.38.37
         1.38.36
         1.38.35
         1.38.34
         1.38.33

The additional following precompiled SDKs are also available for download:
    *    sdk-releases-2ce4170cef5ce46f337f9fd907b614a8db772c7d-64bit    INSTALLED
         sdk-releases-0a6fe6ef5880bf5b035d396f3875fda9b7c4bb60-64bit

The following SDKs can be compiled from source:
         sdk-main-64bit

The following precompiled tool packages are available for download:
    (*)    releases-2ce4170cef5ce46f337f9fd907b614a8db772c7d-64bit      INSTALLED
           releases-0a6fe6ef5880bf5b035d396f3875fda9b7c4bb60-64bit
           node-14.18.2-64bit
           node-14.15.5-64bit
           node-15.14.0-64bit
    (*)    node-16.20.0-64bit           INSTALLED
     *     python-3.9.2-nuget-64bit     INSTALLED
           python-3.9.2-64bit
     *     java-8.152-64bit             INSTALLED
           emscripten-1.38.30
           emscripten-1.38.31
           gnu-2.5.4
           mingw-7.1.0-64bit

The following tools can be compiled from source:
           llvm-git-main-32bit
           llvm-git-main-64bit
           emscripten-tag-1.38.30-32bit
           emscripten-tag-1.38.31-32bit
           emscripten-tag-1.38.30-64bit
           emscripten-tag-1.38.31-64bit
           binaryen-tag-1.38.30-32bit
           binaryen-tag-1.38.31-32bit
           binaryen-tag-1.38.30-64bit
           binaryen-tag-1.38.31-64bit
           emscripten-main-32bit
           emscripten-main-64bit
           binaryen-main-32bit
           binaryen-main-64bit
           ninja-git-release-64bit
           ccache-git-emscripten-64bit

Items marked with * are activated for the current user.
Items marked with (*) are selected for use, but your current shell environment is not configured to use them. Type "emsdk_env.bat" to set up your current shell to use them, or call "emsdk activate --permanent <name_of_sdk>" to permanently activate them.

To access the historical archived versions, type 'emsdk list --old'

Run "git pull" to pull in the latest list.

Am I supposed to read all this ? I need to list only installed items so that I do not waste hours for reading the items which are not installed.

When the list of non-installed items overflows the limits of my Command Prompt, what will I do ? List pages and pages and pages ? Hm... No. This is not convenient.

We need a list mode which shows only installed items.

sbc100 commented 7 months ago

I agree uninstallation could use some improvement. I also noticed that ./emsdk uninstall latest simply doesn't work.

If you would like help make this better that would be most welcome.

Note that I don't think uninstallation will effect your registry values that were install using activate --permanent (that would require some more work).

vault-thirteen commented 7 months ago

If you would like help make this better that would be most welcome.

I do not know how can I make it better. I can suggest to add a new argument to the emsdk list command, something like --installed which will enable listing only installed features.

Flix01 commented 5 months ago

I can suggest to add a new argument to the emsdk list command, something like --installed which will enable listing only installed features.

I agree. I'm currently using command-line pipes, e.g: emsdk list --old --uses | grep INSTALLED (or emsdk list --old --uses | grep \*) but I'm on Linux, and I'm not sure if this solution is portable.