Problem compiling/linking vice (rrnetmk3)
Versatile Commodore Emulator
Brought to you by:
blackystardust,
gpz
ubuntu 16.10 - building from r32033 / gcc 6.2.0
configured with ./configure --enable-sdlui2
Making all in cart
magicvoice.c: In function ‘magicvoice_mmu_translate’:
magicvoice.c:1273:36: warning: array subscript is below array bounds [-Warray-bounds]
*base = mv_rom - 0xc000;
~~~~~~~^~~~~~~~
magicvoice.c:1293:36: warning: array subscript is below array bounds [-Warray-bounds]
*base = mv_rom - 0xa000;
~~~~~~~^~~~~~~~
rrnetmk3.c: In function ‘rrnetmk3_reset’:
rrnetmk3.c:161:9: warning: implicit declaration of function ‘cs8900io_reset’ [-Wimplicit-function-declaration]
cs8900io_reset();
^~~~~~~~~~~~~~
rrnetmk3.c: In function ‘rrnetmk3_cs8900_read’:
rrnetmk3.c:244:12: warning: implicit declaration of function ‘cs8900io_read’ [-Wimplicit-function-declaration]
return cs8900io_read(address);
^~~~~~~~~~~~~
rrnetmk3.c: In function ‘rrnetmk3_cs8900_store’:
rrnetmk3.c:264:5: warning: implicit declaration of function ‘cs8900io_store’ [-Wimplicit-function-declaration]
cs8900io_store(address, byte);
^~~~~~~~~~~~~~
rrnetmk3.c: In function ‘rrnetmk3_init’:
rrnetmk3.c:368:5: warning: implicit declaration of function ‘cs8900io_init’ [-Wimplicit-function-declaration]
cs8900io_init();
^~~~~~~~~~~~~
rrnetmk3.c: In function ‘rrnetmk3_common_attach’:
rrnetmk3.c:386:13: warning: implicit declaration of function ‘cs8900io_enable’ [-Wimplicit-function-declaration]
if (cs8900io_enable(CARTRIDGE_NAME_RRNETMK3) < 0) {
^~~~~~~~~~~~~~~
rrnetmk3.c: In function ‘rrnetmk3_detach’:
rrnetmk3.c:511:5: warning: implicit declaration of function ‘cs8900io_disable’ [-Wimplicit-function-declaration]
cs8900io_disable();
^~~~~~~~~~~~~~~~
vsidmem.c: In function ‘mem_initialize_memory’:
vsidmem.c:515:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[1][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:516:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[2][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:517:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[3][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:518:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[9][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:519:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[10][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:520:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[11][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:521:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[25][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:522:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[26][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
vsidmem.c:523:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[27][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c: In function ‘mem_initialize_memory’:
c64mem.c:712:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[1][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:713:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[2][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:714:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[3][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:715:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[9][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:716:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[10][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:717:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[11][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:718:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[26][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64mem.c:719:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[27][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c: In function ‘mem_initialize_memory’:
c64memsc.c:665:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[1][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:666:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[2][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:667:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[3][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:668:51: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[9][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:669:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[10][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:670:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[11][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:671:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[26][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
c64memsc.c:672:52: warning: array subscript is below array bounds [-Warray-bounds]
mem_read_base_tab[27][i] = mem_chargen_rom - 0xd000;
~~~~~~~~~~~~~~~~^~~~~~~~
Making all in scpu64
Making all in c64dtv
Making all in c128
Making all in vic20
Making all in cart
Making all in pet
Making all in plus4
Making all in cbm2
Making all in arch
Making all in android
Making all in AnVICE
Making all in .settings
Making all in assets-proto
Making all in jni
Making all in locnet
Making all in locnet_al
Making all in locnet_x64
Making all in locnet_x64sc
Making all in locnet_x64dtv
Making all in locnet_xscpu64
Making all in locnet_x128
Making all in locnet_xcbm2
Making all in locnet_xcbm5x0
Making all in locnet_xpet
Making all in locnet_xplus4
Making all in locnet_xvic
Making all in sdl
Making all in vice_c64cart
Making all in vice_c64exp
Making all in vice_cbm2common
Making all in vice_common
Making all in vice_commonall
Making all in vice_commoncart
Making all in vice_crtc
Making all in vice_iec
Making all in vice_ieeepar
Making all in vice_joyport
Making all in vice_tape
Making all in vice_vicii
Making all in vice_viciisc
Making all in vice_x128
Making all in vice_x64
Making all in vice_x64dtv
Making all in vice_x64sc
Making all in vice_xcbm2
Making all in vice_xcbm5x0
Making all in vice_xpet
Making all in vice_xplus4
Making all in vice_xscpu64
Making all in vice_xvic
Making all in res-proto
Making all in layout
Making all in values
Making all in src-proto
Making all in com
Making all in locnet
Making all in vice
Making all in sdl
Making all in dingoo-files
Making all in msvc-files
Making all in qnx4
Making all in syllable-files
Making all in win32-watcom
video.c:108:20: warning: ‘sdl_gl_vertex_coord’ defined but not used [-Wunused-const-variable=]
static const float sdl_gl_vertex_coord[4 * 4] = {
^~~~~~~~~~~~~~~~~~~
Making all in lib
Making all in p64
Making all in platform
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_peek':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:254: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_read':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:244: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_detach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:511: undefined reference to `cs8900io_disable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_store':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:264: undefined reference to `cs8900io_store'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_init':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:368: undefined reference to `cs8900io_init'
collect2: error: ld returned 1 exit status
Makefile:1951: recipe for target 'x64' failed
make[3]: *** [x64] Error 1
make[3]: *** Waiting for unfinished jobs....
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_peek':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:254: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_read':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:244: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_detach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:511: undefined reference to `cs8900io_disable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_store':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:264: undefined reference to `cs8900io_store'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_init':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:368: undefined reference to `cs8900io_init'
collect2: error: ld returned 1 exit status
Makefile:1959: recipe for target 'x64sc' failed
make[3]: *** [x64sc] Error 1
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_peek':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:254: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_read':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:244: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_detach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:511: undefined reference to `cs8900io_disable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_store':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:264: undefined reference to `cs8900io_store'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_init':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:368: undefined reference to `cs8900io_init'
collect2: error: ld returned 1 exit status
Makefile:1979: recipe for target 'xscpu64' failed
make[3]: *** [xscpu64] Error 1
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_peek':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:254: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_read':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:244: undefined reference to `cs8900io_read'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_common_attach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:386: undefined reference to `cs8900io_enable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_reset':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:161: undefined reference to `cs8900io_reset'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_detach':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:511: undefined reference to `cs8900io_disable'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_cs8900_store':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:264: undefined reference to `cs8900io_store'
../src/c64/cart/libc64cart.a(rrnetmk3.o): In function `rrnetmk3_init':
/home/jools/Repos/Public/vice-emu-code/vice/src/c64/cart/rrnetmk3.c:368: undefined reference to `cs8900io_init'
collect2: error: ld returned 1 exit status
Makefile:1947: recipe for target 'x128' failed
make[3]: *** [x128] Error 1
Makefile:2074: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
Makefile:1833: recipe for target 'all' failed
make[1]: *** [all] Error 2
Makefile:601: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Confirmed with r32039 as well.
The problem is the conditional compilation of emulation of ethernet cartridges. When configured with --enable-ethernet, building will succeed.
Thanks for reporting, I'll look into this. Meanwhile, if you want VICE to build, do a
sudo apt-get install libpcap-devand then run configure again with --enable-ethernet.Fixed in rev 32047, please retry.
All good. Thanks!