Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
06771 Compiling Minor Always Nov 22, 2017, 20:28 Nov 23, 2017, 14:41
Tester MrGW View Status Public Platform MAME (Self-compiled)
Assigned To hap Resolution Fixed OS Linux (64-bit)
Status [?] Resolved Driver
Version 0.191 Fixed in Version 0.192 Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary MESS-specific 06771: coco3, dragon, etc..: Genie failing to determine the nested dependency of coco_t4426 on mc14411
Description Building a CoCo/Dragon restricted SOURCES MAME fails:
Workaround: explicitly include coco_t4426.cpp in SOURCES:
Genie failing to determine the nested dependency of coco_t4426 on mc14411 (not
included in liboptional makefile).
Steps To Reproduce $ make SOURCES=src/mame/drivers/dragon.cpp,src/mame/drivers/coco12.cpp,src/mame/drivers/coco3.cpp REGENIE=1
[...]
Linking mame64...
../../../../linux_gcc/bin/x64/Release/mame_mame/liboptional.a(coco_t4426.o): In function `std::unique_ptr<device_t, std::default_delete<device_t> > emu::detail::device_type_impl::create_device<(anonymous namespace)::coco_t4426_device>(emu::detail::device_type_impl const&, machine_config const&, char const*, device_t*, unsigned int)':
coco_t4426.cpp:(.text+0x2de): undefined reference to `vtable for device_finder<mc14411_device, true>'
../../../../linux_gcc/bin/x64/Release/mame_mame/liboptional.a(coco_t4426.o): In function `(anonymous namespace)::coco_t4426_device::device_reset()':
coco_t4426.cpp:(.text+0x530): undefined reference to `mc14411_device::rsa_w(int)'
coco_t4426.cpp:(.text+0x541): undefined reference to `mc14411_device::rsb_w(int)'
coco_t4426.cpp:(.text+0x54d): undefined reference to `mc14411_device::timer_disable_all()'
coco_t4426.cpp:(.text+0x570): undefined reference to `mc14411_device::timer_enable(mc14411_device::timer_id, bool)'
../../../../linux_gcc/bin/x64/Release/mame_mame/liboptional.a(coco_t4426.o): In function `(anonymous namespace)::coco_t4426_device::device_add_mconfig(machine_config&)':
coco_t4426.cpp:(.text.unlikely+0x487): undefined reference to `MC14411'
collect2: error: ld returned 1 exit status
mame.make:250: recipe for target '../../../../../mame64' failed
make[2]: *** [../../../../../mame64] Error 1
Makefile:94: recipe for target 'mame' failed
make[1]: *** [mame] Error 2
makefile:1243: recipe for target 'linux_x64' failed
make: *** [linux_x64] Error 2

Workaround: explicitly include coco_t4426.cpp in SOURCES:

$ make SOURCES=src/mame/drivers/dragon.cpp,src/mame/drivers/coco12.cpp,src/mame/drivers/coco3.cpp,src/devices/bus/coco/coco_t4426.cpp REGENIE=1
Additional Information This issue was identified by Ciaran Anscomb (XRoar author). He also provide a work-around for compiling.
Github Commit
Flags
Regression Version
Affected Sets / Systems coco3, dragon, etc..
Attached Files
 
Relationships
There are no relationship linked to this issue.
Notes
1
User avatar
No.14463
MrGW
Tester
Nov 23, 2017, 14:41
Thanks, hap!