Skip to content

🐛 VSCode-bundled libreadline.so.8 causes linker error on openSUSE #399

@undonepotato

Description

@undonepotato

Expected Behavior

When I install PROS as a VSCode extension, I should be able to run pros make all and it should build successfully.

Actual Behavior

When I run pros make all, I get this warning many times in succession (my home path is replaced with ~:

/bin/sh: ~/.config/VSCodium/User/globalStorage/sigbots.pros/install/pros-cli-linux/_internal/libreadline.so.8: no version information available (required by /bin/sh)

Then, the make fails with:

/bin/sh: symbol lookup error: /bin/sh: undefined symbol: rl_completion_rewrite_hook make: *** [common.mk:284: bin/autonomous_control.cpp.o] Error 127 
ERROR - pros.cli.build:make - Failed to make project: Exit Code 2 - pros-cli version:3.5.6

Workaround 1: Removing bundled libreadline

Troubleshooting a bit with an LLM led me to the solution, which is removing the PROS-bundled libreadline.so.8, like so:

cd ~/.config/VSCodium/User/globalStorage/sigbots.pros/install/pros-cli-linux/_internal
mv libreadline.so.8 libreadline.so.8.bak

After performing this step, pros make all runs perfectly. My /bin/sh may be expecting a newer libreadline ABI or something like that.

Workaround 2: Installing pros-cli from pip

As a more permanent solution, I'm currently using the pros-cli on PyPI after uninstalling the bundled CLI. This also makes pros make all work, probably because it doesn't bundle a libreadline. This is my personal long-term solution, since it will persist with updates.

Steps to Reproduce

  1. I only tested with my own system, so I don't know exactly how widespread this issue is. Details in the next section.
  2. Install the PROS extension from the VS Code extension marketplace.
  3. Install the PROS CLI, toolchain, and vexcom utility
  4. Create a minimal project.
  5. Run pros make all.

System information

  • I'm on openSUSE Tumbleweed (version 20251225, though I also had this issue on another machine a few months back).
  • My system libreadline8 package is on 8.3.3-2.1, according to Zypper.
  • PROS 3.5.6. Extension version 0.8.3 on VSCodium 1.107.18627.
  • My Makefile is the default with hot linking turned off, though I can reproduce the issue with it turned on.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions