| カテゴリ | 重要度 | ステータス | 解決状況 | 登録日時 | 最終更新 |
|---|---|---|---|---|---|
コンパイル | 中 | 仮承認 | 未処理 | 2011-04-23 02:16 | 2011-04-23 08:15 |
| テスター | jordi | 担当者 |   | ソース | |
| バージョン | 0.141 | 発生バージョン | 修正バージョン | ||
| 修正コミット | プルリク | ||||
| フラグ | |||||
| セット | |||||
| セット詳細 | |||||
| 概 要 | 一部のLinuxアーキテクチャでメモリアライメントの問題。 | ||||
| 詳 細 | SDLMAME fails to build on several Linux architectures supported by Debian, all with a common problem:Compiling src/osd/sdl/sdlsocket.c...
Compiling src/osd/sdl/sdlmisc_unix.c...
In file included from src/emu/emucore.h:38:0,
from src/emu/emu.h:53,
from src/osd/sdl/sdlsocket.c:26:
src/lib/util/astring.h:367:6: note: the mangling of 'va_list' has changed in GCC 4.4
cc1plus: warnings being treated as errors
In file included from src/emu/emu.h:69:0,
from src/osd/sdl/sdlsocket.c:26:
src/emu/memory.h: In member function 'UINT16 direct_read_data::read_raw_word(offs_t, offs_t)':
src/emu/memory.h:805:84: error: cast from 'UINT8*' to 'UINT16*' increases required alignment of target type
src/emu/memory.h: In member function 'UINT16 direct_read_data::read_decrypted_word(offs_t, offs_t)':
src/emu/memory.h:812:90: error: cast from 'UINT8*' to 'UINT16*' increases required alignment of target type
src/emu/memory.h: In member function 'UINT32 direct_read_data::read_raw_dword(offs_t, offs_t)':
src/emu/memory.h:825:84: error: cast from 'UINT8*' to 'UINT32*' increases required alignment of target type
src/emu/memory.h: In member function 'UINT32 direct_read_data::read_decrypted_dword(offs_t, offs_t)':
src/emu/memory.h:832:90: error: cast from 'UINT8*' to 'UINT32*' increases required alignment of target type
src/emu/memory.h: In member function 'UINT64 direct_read_data::read_raw_qword(offs_t, offs_t)':
src/emu/memory.h:845:84: error: cast from 'UINT8*' to 'UINT64*' increases required alignment of target type
src/emu/memory.h: In member function 'UINT64 direct_read_data::read_decrypted_qword(offs_t, offs_t)':
src/emu/memory.h:852:90: error: cast from 'UINT8*' to 'UINT64*' increases required alignment of target type
Compiling src/osd/sdl/sdlos_unix.c...
src/osd/sdl/sdlsocket.c: In function 'file_error sdl_open_socket(const char*, UINT32, osd_file**, UINT64*)':
src/osd/sdl/sdlsocket.c:59:48: error: cast from 'char*' to 'in_addr*' increases required alignment of target typeAffected are, at least: ARM, ia64, MIPS and SPARC64. See the build logs in https://buildd.debian.org/status/logs.php?pkg=mame&ver=0.141-2. I'm not sure if fixing this would allow builds to succeed for these “exotic” architectures using NOASM, but if it did, it'd pave the path to use MAME on cheap ARM-based boards, which sounds like a good thing. :) (Note that s390 failed in a totally unrelated way; I'll have a look at that at some point, but I would be incredibly suprised if a single person in this planet does install and run MAME on a s390 server. :) | ||||
| 再現手順 | |||||
| 追加情報 | |||||
| 添付ファイル | |||||