Opened 20 years ago
Closed 20 years ago
Last modified 5 years ago
#808 closed defect (fixed)
ALL: Compilation error on BeOS
|Reported by:||SF/kreeblah||Owned by:||fingolfin|
Compiling ScummVM with the current CVS tree provides the following error in the Sky module:
c++ -Wp,-MMD,"sky/.deps/text.d2" -g -O -Wall -Wstrict- prototypes -Wuninitialized -Wno-long-long -Wno-multichar -Wno- unknown-pragmas -DUNIX -I. -Icommon `sdl-config --cflags` -c sky/text.cpp -o sky/text.o /boot/home/ScummVMCVS/0716250503/scummvm/sky/text.cpp: In method `struct displayText_t SkyText::displayText(char *, uint8 *, bool, short unsigned int, unsigned char)': /boot/home/ScummVMCVS/0716250503/scummvm/sky/text.cpp:281: initializing non-const `uint8 *&' with `byte *' will use a temporary make: *** [sky/text.o] Error 1
Disabling that in the makefile gets it to options.cpp where it quits with this error:
c++ -Wp,-MMD,"gui/.deps/options.d2" -g -O -Wall -Wstrict- prototypes -Wuninitialized -Wno-long-long -Wno-multichar -Wno- unknown-pragmas -DUNIX -DDISABLE_SKY -I. -Icommon `sdl-config --cflags` -c gui/options.cpp -o gui/options.o /boot/home/ScummVMCVS/0716250503/scummvm/gui/options.cpp: In method `GlobalOptionsDialog::GlobalOptionsDialog(class NewGui *, class GameDetector &)': /boot/home/ScummVMCVS/0716250503/scummvm/gui/options.cpp:142: implicit declaration of function `int getcwd(...)' make: *** [gui/options.o] Error 1
Ticket imported from: #743138. Ticket imported from: bugs/808.
Change History (9)
comment:1 by , 20 years ago
comment:2 by , 20 years ago
|Summary:||Compilation error on BeOS → ALL: Compilation error on BeOS|
comment:3 by , 20 years ago
Hmmm. I was wondering what the difference was between an 8-bit object and a byte. :^P I don't know whether somebody changed that since I submitted the bug report or not, but that file compiles fine now.
Including unistd.h to options.cpp does allow it to compile options.cpp and doesn't throw any more errors. Thanks.
BTW, would it be possible for the configure script to disable the - Wno-unused-parameter flag on BeOS (the compiler doesn't support it) and to disable MAD support on BeOS by default (no BeOS-compatible port available)?
comment:4 by , 20 years ago
|Status:||new → closed|
comment:5 by , 20 years ago
I added the unistd.h to options.cpp. For the configure script changes: the configure script is still very experimental and not used by default. If you want to see any changes in it, I think those are put best into feature request items for now :-) Please tell me if there are any other problems compiling on BeOS. We'd also be interested in again shipping official BeOS binaries, if you are interested in providing them, tell us :-)
comment:6 by , 20 years ago
comment:7 by , 20 years ago
Sure, I could provide binaries. How would I submit them once they've been compiled? For the time being, I uploaded a compiled copy of 0.4.1 to http://people.msoe.edu/~gelattc/scummvm-0.4.1- beos.zip
comment:8 by , 5 years ago
comment:9 by , 5 years ago
|Component:||Ports → Port: BeOS|
The first is a bogus warning / bogus compiler behaviour - byte and uint8 are identical type (unsigned char), there should be no need for any conversion.
For the second, try adding an #include <unistd.h> to the file - does that help?