Devving on Windows

32 views
Skip to first unread message

Bithov Vinu

unread,
Nov 19, 2020, 12:47:13 PM11/19/20
to mnemosyne-proj-users
I followed this guide and installed everything required (cygwin, make, git, gettext, gettext-devel, python, all the python libs, InnoSetup, mplayer).

I then clone the mnemosyne source code and ran "make windows-installer". I got the error results: 

# Erase previous directories to make sure we're clean.
rm -rf dist
rm -rf build
make build-all-deps
make[1]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne'
# Also rebuilds the docs and the translations.
cd mnemosyne/libmnemosyne/docs && make SPHINXBUILD=sphinx-build html
make[2]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/libmnemosyne/docs'
mkdir -p build/html build/doctrees
sphinx-build -b html -d build/doctrees   source build/html
make[2]: sphinx-build: No such file or directory
make[2]: *** [Makefile:30: html] Error 127
make[2]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/libmnemosyne/docs'
make[1]: *** [makefile:41: build-all-deps] Error 2
make[1]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne'
make: *** [makefile:93: windows-installer] Error 2


How would I fix this so that I can start devving on Windows.

Student Account
Calday Grange Grammar School is a charitable company limited by guarantee and registered in England and Wales with company number 8332696.
The Registered Office is at Grammar School Lane, West Kirby, Wirral, CH48 8GG

Peter Bienstman

unread,
Nov 19, 2020, 12:54:55 PM11/19/20
to mnemosyne-...@googlegroups.com
Missed one dependency in the doc:
pip install -U sphinx

--
You received this message because you are subscribed to the Google Groups "mnemosyne-proj-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mnemosyne-proj-u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mnemosyne-proj-users/15d247b9-d443-46ff-965c-131c5b0cae12n%40googlegroups.com.

Bithov Vinu

unread,
Nov 19, 2020, 2:07:10 PM11/19/20
to mnemosyne-proj-users
Sphinx was already installed (I tried installing it, Requirement already satisfied).

Ran "make windows-installer" again anyway, got the same error (I think? I don't know if there are any differences.): 


rm -rf dist
rm -rf build
make build-all-deps
make[1]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne'
# Also rebuilds the docs and the translations.
cd mnemosyne/libmnemosyne/docs && make SPHINXBUILD=sphinx-build html
make[2]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/libmnemosyne/docs'
mkdir -p build/html build/doctrees
sphinx-build -b html -d build/doctrees   source build/html
make[2]: sphinx-build: No such file or directory
make[2]: *** [Makefile:30: html] Error 127
make[2]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/libmnemosyne/docs'
make[1]: *** [makefile:41: build-all-deps] Error 2
make[1]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne'
make: *** [makefile:93: windows-installer] Error 2

Peter Bienstman

unread,
Nov 19, 2020, 2:10:52 PM11/19/20
to mnemosyne-...@googlegroups.com
It seems there's something wrong with your sphinx install. Does typing 'sphinx-build' in the command line work? You might also try installing it using both the windows command prompt and the cygwin command prompt.

Peter 

Bithov Vinu

unread,
Nov 19, 2020, 2:40:03 PM11/19/20
to mnemosyne-proj-users
Reinstalled Python (system-wide, w/ add to PATH) and now sphinx is working. But, I got some new errors:

# Erase previous directories to make sure we're clean.
rm -rf dist
rm -rf build
make build-all-deps
make[1]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne'
# Also rebuilds the docs and the translations.
cd mnemosyne/libmnemosyne/docs && make SPHINXBUILD=sphinx-build html
make[2]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/libmnemosyne/docs'
mkdir -p build/html build/doctrees
sphinx-build -b html -d build/doctrees   source build/html
Running Sphinx v3.3.1
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 0 source files that are out of date
updating environment: 0 added, 1 changed, 0 removed
reading sources... [100%] index
C:\Users\wingi\mnemosyne\mnemosyne\libmnemosyne\docs\source\index.rst:62: WARNING: toctree contains reference to nonexisting document 'modules/language'
C:\Users\wingi\mnemosyne\mnemosyne\libmnemosyne\docs\source\index.rst:62: WARNING: toctree contains reference to nonexisting document 'modules/translator'
C:\Users\wingi\mnemosyne\mnemosyne\libmnemosyne\docs\source\index.rst:62: WARNING: toctree contains reference to nonexisting document 'modules/pronouncer'
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] index
generating indices... genindex py-modindex done
writing additional pages... search done
copying static files... done
copying extra files... done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded, 3 warnings.

The HTML pages are in build\html.

Build finished. The HTML pages are in build/html.
make[2]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/libmnemosyne/docs'
cd mnemosyne/pyqt_ui && make clean
make[2]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/pyqt_ui'
rm -f *~ *.pyc
rm -f ui_main_wdgt.py ui_add_cards_dlg.py ui_edit_card_dlg.py ui_review_wdgt.py ui_convert_card_type_keys_dlg.py ui_about_dlg.py ui_manage_plugins_dlg.py ui_manage_card_types_dlg.py ui_clone_card_type_dlg.py ui_configuration_wdgt_main.py ui_configuration_wdgt_card_appearance.py ui_activate_cards_dlg.py ui_card_set_name_dlg.py ui_configuration_dlg.py ui_criterion_wdgt_default.py ui_statistics_dlg.py ui_sync_dlg.py ui_configuration_wdgt_study.py ui_configuration_wdgt_servers.py ui_preview_cards_dlg.py ui_browse_cards_dlg.py ui_rename_tag_dlg.py ui_change_card_type_dlg.py ui_add_tags_dlg.py ui_remove_tags_dlg.py ui_getting_started_dlg.py ui_tip_dlg.py ui_import_dlg.py ui_compact_database_dlg.py ui_delete_unused_media_files_dlg.py ui_rename_card_type_dlg.py ui_export_dlg.py ui_export_metadata_dlg.py ui_edit_M_sided_card_type_dlg.py ui_edit_M_sided_card_template_wdgt.py ui_pronouncer_dlg.py ui_translator_dlg.py
rm -f mnemosyne_rc.py
make[2]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/pyqt_ui'
cd mnemosyne/pyqt_ui && make
make[2]: Entering directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/pyqt_ui'
python3 ./pyuic5 main_wdgt.ui > ui_main_wdgt.py
Traceback (most recent call last):
  File "./pyuic5", line 15, in <module>
    from PyQt5 import QtCore
ModuleNotFoundError: No module named 'PyQt5'
make[2]: *** [makefile:28: ui_main_wdgt.py] Error 1
make[2]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne/mnemosyne/pyqt_ui'
make[1]: *** [makefile:43: build-all-deps] Error 2
make[1]: Leaving directory '/cygdrive/c/Users/wingi/mnemosyne'
make: *** [makefile:93: windows-installer] Error 2





PyQt5 is most definitely installed.

Peter Bienstman

unread,
Nov 19, 2020, 2:43:44 PM11/19/20
to mnemosyne-...@googlegroups.com
You're still having some issues with the dependencies not being correctly installed. Have a look at the paths at the top of the 'makefile' to see if something does not match your setup (e.g. you have installed python in a non-standard path, or it's not Python 3.7). A brute force way you can try is installing the dependencies both in the system python and the cygwin Python.

Peter

Taylor

unread,
Dec 1, 2020, 2:21:40 AM12/1/20
to mnemosyne-proj-users
I am having a similar problem with Sphinx.

It says there are missing module files

# Also rebuilds the docs and the translations.
cd mnemosyne/libmnemosyne/docs && make SPHINXBUILD=sphinx-build html
make[1]: Entering directory '/home/taylor/Apps/mnemosyne/mnemosyne/libmnemosyne/docs'
mkdir -p build/html build/doctrees
sphinx-build -b html -d build/doctrees   source build/html
Running Sphinx v3.2.1
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 28 source files that are out of date
updating environment: [new config] 28 added, 0 changed, 0 removed
reading sources... [100%] modules/tag_tree                                                                   
/home/taylor/Apps/mnemosyne/mnemosyne/libmnemosyne/docs/source/index.rst:62: WARNING: toctree contains reference to nonexisting document 'modules/language'                                                              
/home/taylor/Apps/mnemosyne/mnemosyne/libmnemosyne/docs/source/index.rst:62: WARNING: toctree contains reference to nonexisting document 'modules/translator'                                                            
/home/taylor/Apps/mnemosyne/mnemosyne/libmnemosyne/docs/source/index.rst:62: WARNING: toctree contains reference to nonexisting document 'modules/pronouncer'



Then says:
make[1]: Leaving directory '/home/taylor/Apps/mnemosyne/po'
cd po && make
make[1]: Entering directory '/home/taylor/Apps/mnemosyne/po'
mkdir -p `dirname ../mo/cs/LC_MESSAGES/mnemosyne.mo`
python3 ./msgfmt.py -o ../mo/cs/LC_MESSAGES/mnemosyne.mo cs.po
Traceback (most recent call last):
  File "/home/taylor/Apps/mnemosyne/po/./msgfmt.py", line 236, in <module>
    main()
  File "/home/taylor/Apps/mnemosyne/po/./msgfmt.py", line 232, in main
    make(filename, outfile)
  File "/home/taylor/Apps/mnemosyne/po/./msgfmt.py", line 199, in make
    output = generate()
  File "/home/taylor/Apps/mnemosyne/po/./msgfmt.py", line 92, in generate
    output += array.array("i", offsets).tostring()
AttributeError: 'array.array' object has no attribute 'tostring'
make[1]: *** [makefile:43: ../mo/cs/LC_MESSAGES/mnemosyne.mo] Error 1
make[1]: Leaving directory '/home/taylor/Apps/mnemosyne/po'
make: *** [makefile:46: build-all-deps] Error 2

***********************************************************************************************************************************



I figured it was a missing dependency, but went over them many times, reversing to a snapshot in a VM.

Not sure what the problem is, and I'm hesitant to write up a bug.

Thanks.

Peter Bienstman

unread,
Dec 1, 2020, 2:24:34 AM12/1/20
to mnemosyne-...@googlegroups.com
This is a bug related to Python 3.9 that Julien fixed recently. Just download the latest code from github.

Cheers,

Peter

Message has been deleted
Message has been deleted
Message has been deleted
Message has been deleted

Peter Bienstman

unread,
Dec 2, 2020, 3:09:38 AM12/2/20
to mnemosyne-...@googlegroups.com
Thanks for tracking this down, I've updated the documentation.

Peter

PS: this list is moderated, and if you are not a subscriber, I have to approve your posts first before they show up. Not sure if Google lets you know that your messages are held for review, but there's no need to resend your mail

On Tue, Dec 1, 2020 at 10:35 PM Taylor <w.taylor.w...@gmail.com> wrote:
I finally found out that this is related to a Linux-specific issue with Python permissions. (I had already tried the master branch)

The installation only works when sphinx is installed with sudo, contrary to the normally expected method without sudo.

According to the new "correct" way of doing things in Python - users should typically install packages without sudo privileges.

Because of this, Linux users might not be aware that Sphinx actually requires to be installed via:
sudo pip install -U sphinx,
rather than what all the other packages require:
pip install --user -U <package>

Thus, this is perhaps at least a documentation issue on the git readme for Linux users.

. . . . unless it is a bug, which I wouldn't mind writing upon your confirmation.

Thanks, cheers.


Taylor Worthington

unread,
Dec 2, 2020, 6:40:53 AM12/2/20
to mnemosyne-...@googlegroups.com
I reproduced this 5 times on a Fedora 33 LXQT VM, but now after all of that I can't reproduce it after a fresh installation.



You received this message because you are subscribed to a topic in the Google Groups "mnemosyne-proj-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/mnemosyne-proj-users/E52rOjK8d00/unsubscribe.
To unsubscribe from this group and all its topics, send an email to mnemosyne-proj-u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mnemosyne-proj-users/CAMdxoPEm-%3DpdA7PmRD%2BFd8Q8d7SBj3%3Dr6fvY9T_jfTUQR5CPHA%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages