First post, by almeath
[I attempted to find a place to post this request in the DOSBox branches sub-forum, but I do not appear to have posting privileges in there]
I spent a considerable amount of time teaching myself how to compile DOSBox SVN in macOS (with patches), as there is not a great deal of up-to-date information available for the minority of Mac users. Having succeeded in that endeavor, I then became interested in seeing if I could manage to compile some of the various unofficial DOSBox branches, many of which are seemingly "Windows only", but which have some very enticing features. For example, I see requests asking whether DOSBox ECE could be made to work on the Mac, so I decided to give that one a go first. Being a long time Mac user, I do not like to see requests go unaddressed. I want to do something practical to help out, even though I have no programming background and am entirely self taught.
So,I downloaded the source for DOSBox ECE from Github. Running autogen spat out a permissions error, so I ran this command:
chmod +x autogen.sh
Running autogen then resulted in another error: bad interpreter: /bin/sh^M:
After some research, I learned that I needed to install dos2unix via Homebrew and then run the following command on autogen, which converts the format to one that is friendly with Unix/macOS:
dos2unix autogen.sh
I was then able to run ./autogen, followed by ./configure , both of which successfully completed with no errors. I have attached the terminal output of each process.
Lastly, I ran the make command. Everything was working well despite some warnings being generated. Ultimately, the make command failed due to 3 errors and 2 warnings, all related to the "drive_iso.cpp" file. The last part of the terminal output was:
11 warnings generated.
mv -f .deps/drive_fat.Tpo .deps/drive_fat.Po
g++ -DHAVE_CONFIG_H -I. -I../.. -I../../include -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_THREAD_SAFE -g -O2 -mno-ms-bitfields -MT drive_iso.o -MD -MP -MF .deps/drive_iso.Tpo -c -o drive_iso.o drive_iso.cpp
In file included from drive_iso.cpp:22:
./cdrom.h:150:28: warning: in-class initialization of non-static data member is a C++11 extension [-Wc++11-extensions]
const Bit16u chunkSize = 0;
^
drive_iso.cpp:147:19: error: expected '('
fileName{'\0'},
^
drive_iso.cpp:147:24: error: expected ';' after expression
fileName{'\0'},
^
;
drive_iso.cpp:147:20: warning: expression result unused [-Wunused-value]
fileName{'\0'},
^~~~
drive_iso.cpp:147:25: error: expected unqualified-id
fileName{'\0'},
^
2 warnings and 3 errors generated.
make[3]: *** [drive_iso.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
It seems that this *almost* worked and there should not be anything fundamentally incompatible with getting this to compile on the Mac. The full terminal output for the make command is also attached.
Can anyone familiar with DOSBox compilation provide me with some advice or assistance in relation to the above error? I have searched around online but nothing useful has emerged.
DOSBox SVN for macOS (x86-64) - customized with Munt MT-32, Nuked OPL3, 3dfx Voodoo, Extra RAM, Large HD, and more.
https://github.com/almeath/DOSBox-SVN-64-bit-for-macOS