kitao / pyxel

A retro game engine for Python
MIT License
15.31k stars 847 forks source link

Unable to build a pyxel to exe application on a drive other than C:/ on Windows. #521

Closed afi-dev closed 7 months ago

afi-dev commented 9 months ago

Problem with pyxel when executing scripts from a Windows Desktop on a drive other than C:/.

Error:

PS F:\Bureau\Pyxel\MyPyxelGame\build> pyxel app2exe .\my_game.pyxapp
Traceback (most recent call last):
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\Scripts\pyxel.exe\__main__.py", line 7, in <module>
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\site-packages\pyxel\cli.py", line 53, in cli
    command[1](*sys.argv[2:])
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\site-packages\pyxel\cli.py", line 277, in create_executable_from_pyxel_app
    modules = pyxel.utils.list_imported_modules(_extract_pyxel_app(pyxel_app_file))[
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\site-packages\pyxel\utils.py", line 64, in list_imported_modules
    _list_imported_modules(imports, filename, checked_files)
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\site-packages\pyxel\utils.py", line 42, in _list_imported_modules
    imports["local"].add(os.path.relpath(module_filename))
  File "C:\Users\Afine\AppData\Local\Programs\Python\Python310\lib\ntpath.py", line 744, in relpath
    raise ValueError("path is on mount %r, start on mount %r" % (
ValueError: path is on mount 'C:', start on mount 'F:'

Description:

I've noticed that when building an app with the pyxel app2exe utility, I run into a problem with pyxel directly, which can't build the app because it's not on a C:/ disk.

Step to reproduce:

Current behavior:

When I try to run a pyxel script from the Windows Desktop, which is set on a disk other than C:/, I encounter an error. Specifically, when I run the command pyxel play .\Equationator.pyxapp, I get an error indicating a problem with the paths.

Expected behavior:

I expect pyxel to be able to handle paths correctly even when the Windows Desktop is set to a disk other than C:/, and that I can run my pyxel build scripts without encountering path errors.

Additional information:

kitao commented 7 months ago

Since there is no change in the situation, let me close this issue.