Anthony, Our documentation covers how to solve this. Link below. [https://pyinstaller.org/en/stable/runtime-information.html\#using-file][https_pyinstaller.org_en_stable_runtime-information.html_using-file]
Jasper Harrison, aka Legorooj Core Developer on PyInstaller https://legorooj.net \-------- Original Message -------- On 28 Jan 2023, 21:53, 'Anthony Nash' via PyInstaller < pyinstaller@googlegroups.com> wrote: > > > > Hi all, > > > > > I have a large python codebase developed inside PyCharm. I want to use > PyInstaller for obvious reasons; however, I'm struggling with relative paths > for data files due to the project code file hierarchy. > > > The file hierarchy was a usual top-down structure, i.e., the point of > execution is within a file found in the project root folder, with the > additional python files stored in a sensible folder, ***(please pay > particular attention to the version.txt file on the same level as the Main.py > file)*** e.g., > > Project/ > \--Main.py > \--version.txt > \--Engines/ > \----somefile.py > \--Controllers/ > \----somefile.py > \--Entities/ > \----somefile.py > > A year ago, I built a GUI front end whilst maintaining the console-based > point of execution. The GUI point of execution is within MainGUI.py. But that > file is not at the project root. It looks a bit like this: > > Project/ > \--Main.py > \--version.txt > \--GUI/ > \----MainGUI.py > \--Engines/ > \----somefile.py > \--Controllers/ > \----somefile.py > \--Entities/ > \----somefile.py > > Inside MainGUI.py, I have the code to open the "../version.txt" file: > > with open("../version.txt") as file: version = file.readline().strip() > > I navigate to the Project/GUI folder in the PyCharm Terminal and execute > pyinstaller MainGUI.py --onefile It seems to work until I try and execute the > built MainGUI.exe. I'm given the error: > > Traceback (most recent call last): File "MainGUI.py", line 10, in <module> > FileNotFoundError: \[Errno 2\] No such file or directory: '../version.txt' > \[17232\] Failed to execute script 'MainGUI' due to unhandled exception! > > I could move the version.txt file to be on the same level as MainGUI.py, but > this was a reduced example. There are lots of data files referenced using > relative paths. > > I would be grateful for any assistance. Thank you. > > \-- > You received this message because you are subscribed to the Google Groups > "PyInstaller" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to > [pyinstaller+unsubscr...@googlegroups.com][pyinstaller_unsubscribe_googlegroups.com]. > To view this discussion on the web visit > [https://groups.google.com/d/msgid/pyinstaller/5e84c822-3872-452c-bea9-7851d94a32e9n%40googlegroups.com][https_groups.google.com_d_msgid_pyinstaller_5e84c822-3872-452c-bea9-7851d94a32e9n_40googlegroups.com]. > [https_pyinstaller.org_en_stable_runtime-information.html_using-file]: https://pyinstaller.org/en/stable/runtime-information.html#using-file [pyinstaller_unsubscribe_googlegroups.com]: mailto:pyinstaller+unsubscr...@googlegroups.com [https_groups.google.com_d_msgid_pyinstaller_5e84c822-3872-452c-bea9-7851d94a32e9n_40googlegroups.com]: https://groups.google.com/d/msgid/pyinstaller/5e84c822-3872-452c-bea9-7851d94a32e9n%40googlegroups.com?utm_medium=email&utm_source=footer -- You received this message because you are subscribed to the Google Groups "PyInstaller" group. To unsubscribe from this group and stop receiving emails from it, send an email to pyinstaller+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/pyinstaller/ND5hlBnt-z28OKzyFu38vYLTGA5zjS6AFYPn1Jfh3hOa6hUofLmykH1L3B3eDC7_J4xe8JxflvWjreta3y7dUjN2BT51DDppByQu6qmYMyY%3D%40protonmail.com.
publickey - EmailAddress(s=legorooj@protonmail.com) - 0x164CF234.asc
Description: application/pgp-keys
signature.asc
Description: OpenPGP digital signature