pce-devel / mednafenPceDev

Managed Mednafen Git repo with relevant fixes in support of the PCE (Developer) Community.
26 stars 5 forks source link

Windows build no longer works #132

Closed dshadoff closed 7 months ago

dshadoff commented 12 months ago

Based on the current version (the HEAD of the MAIN branch as at November 7, 2023).

I was following the cross-compile instructions in the README_Windows_compile.md, running from within linux; the build progressed for a while, but failed with the following set of errors:

cdrom/CDAFReader_FLAC.o: In function `Mednafen::CDAFReader_FLAC::~CDAFReader_FLAC()':
/home/davidshadoff/devel/mednafenPceDev/build64/src/../../mednafen/src/cdrom/CDAFReader_FLAC.cpp:298: undefined reference to `__imp_FLAC__stream_decoder_delete'
cdrom/CDAFReader_FLAC.o: In function `Mednafen::CDAFReader_FLAC::Read_(short*, unsigned long long)':
/home/davidshadoff/devel/mednafenPceDev/build64/src/../../mednafen/src/cdrom/CDAFReader_FLAC.cpp:311: undefined reference to `__imp_FLAC__stream_decoder_process_single'
/home/davidshadoff/devel/mednafenPceDev/build64/src/../../mednafen/src/cdrom/CDAFReader_FLAC.cpp:318: undefined reference to `__imp_FLAC__stream_decoder_get_state'
.
. (bunch of stuff abbreviated)
.
drivers/libmdfnsdl.a(main.o): In function `PrintLIBFLACVersion()':
/home/davidshadoff/devel/mednafenPceDev/build64/src/drivers/../../../mednafen/src/drivers/main.cpp:1778: undefined reference to `__imp_FLAC__VERSION_STRING'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:3396: mednafen.exe] Error 1
make[2]: Leaving directory '/mnt/hgfs/Documents/devel/mednafenPceDev/build64/src'
make[1]: *** [Makefile:5232: all-recursive] Error 1
make[1]: Leaving directory '/mnt/hgfs/Documents/devel/mednafenPceDev/build64/src'
make: *** [Makefile:477: all-recursive] Error 1
dshadoff commented 12 months ago

Until there can be an update to the comprehensive instructions in the file "README_Windows_compile.md", the following is the workaround:

1) Fork the Repository. Along with the codebase, the CI automations will also come. 2) Test on linux locally. When you are comfortable that the new functionality is working, make a new branch and check it in on the new branch in your local fork. The CI automations are not limited to any particular branch(es). 3) The CI automation should automatically kick in and perform builds of both linux and Windows. The results can be found in the repository, under "Actions": a list of builds (associated with pushes/PRs) will be displayed, and you can click "into" one of those builds to obtain results.

pceDev16 commented 11 months ago

There is now a test branch that rolls back the minGW related items that broke this build for the Linux env. https://github.com/pce-devel/mednafenPceDev/tree/fix-linux-build

Try it out and let us know. We may need to update some of the minimum versions in the dependencies for the build.

jbrandwood commented 8 months ago

This is now fixed in the current source, can we just close this now?