Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix README.TXT #177

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

fix README.TXT #177

wants to merge 2 commits into from

Conversation

wlammen
Copy link
Contributor

@wlammen wlammen commented Sep 18, 2024

After recovering from my accident, and buying a replacement for my broken notebook, I started installing Metamath on it. One need is to have a metamath exe available, and I compiled it from scratch.

I use an Linux/Ubuntu OS, and not everything went according to plan. Besides the corrections in this PR, I stumbled over following issues:

  1. Current Ubuntu implementations provide a gcc C compiler for 64 bit code only. The autoconf procedure somehow requires an additional ia32 implementation, which you get by installing gcc-multilib
    sudo apt-get install gcc-multilib
  2. The rlwrap home page moved. To compile it you need to have readline and curses
    sudo apt-get install libreadline-dev
    sudo apt-get install libncurses5-dev libncursesw5-dev

@digama0
Copy link
Member

digama0 commented Sep 18, 2024

Did you want to add (1) and (2) to the readme as well?

Also, it's not clear why we need to compile readline from source here, I thought we were just recommending to use a preinstalled binary, in which case sudo apt install rlwrap should be sufficient.

@wlammen
Copy link
Contributor Author

wlammen commented Sep 18, 2024

(1) Adding a known issues / best practices paragraph makes sense if it is not just me who spent extra time to find the final solution-
(2) I did not expect rlwrap be available as a debian package, but it is! So of course sudo apt-get install rlwrap is sufficient.

This PR fixes just errors in README.TXT. The rest is for information only

@digama0
Copy link
Member

digama0 commented Sep 18, 2024

The readme is for people trying to set it up, so it makes sense that if you had trouble following the directions then you should add enough information so that the next person won't. I think it is a good idea to mention required prerequisite debian packages in the readme.

@wlammen
Copy link
Contributor Author

wlammen commented Sep 18, 2024

This is a can of worms. Debian packages are only available on Debian installations. The autoconf process addresses a wider range of OS including main frames and exotic Linux variants, and of all machines only Intel processor types seem to need the gcc extension. This is just the beginning.
I don't have more than anecdotal knowledge here. It is not my intention to study the gory details for a profound explanation. What I do here is correcting obvious errors, and as little as it seems, it is still for the better, and easy to verify.
This does not reject the idea of the Readme in need of an overhaul. In the end I wrote https://github.com/metamath/set.mm/wiki/Getting-started-with-contributing years ago, so I know there is headroom for improvement in general.

@tirix
Copy link

tirix commented Sep 19, 2024

I'd say let's be as complete as possible and add the instructions for Debian, marked as such.
We can write something vague like "the process is similar for other distributions".
If someone else uses a different distro and can update the description for that case, it will be completed then.
Why be afraid of the worms in Pandora's box?...

@wlammen
Copy link
Contributor Author

wlammen commented Sep 19, 2024

For Debian users the easiest way to get metamath-exe is to follow one of the gcc commands listed in README.TXT. The 'alternative approach' with autoreconf is for those having no gcc available or installed. Then the configure script might find a solution. But you MUST not enter the src folder for this. The instruction in README.TXT is faulty.

@digama0
Copy link
Member

digama0 commented Sep 20, 2024

I agree that we shouldn't let perfect be the enemy of the good. I am not suggesting that you or anyone else overhauls the README, although I wouldn't be opposed to that, only that we write down all the information that we have confirmed through user reports. No one has every OS and linux distro installed, so install instructions are necessarily crowd-sourced to some extent. Let's just put in all the information we learned from your experience, and if someone else has a bad experience on another distro we'll add that too, later.

@wlammen
Copy link
Contributor Author

wlammen commented Sep 20, 2024

I updated the PR.

@wlammen
Copy link
Contributor Author

wlammen commented Sep 20, 2024

@tirix Nice bonmot, by the way !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants