Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

undefined reference to symbol 'atan2@@GLIBC_2.4' on Raspberry Pi #238

Open
rabejens opened this issue Oct 15, 2023 · 5 comments
Open

undefined reference to symbol 'atan2@@GLIBC_2.4' on Raspberry Pi #238

rabejens opened this issue Oct 15, 2023 · 5 comments

Comments

@rabejens
Copy link

Describe the bug
I am trying to build PCem on Raspberry Pi OS Lite.

When linking, it says:

[1/1] Linking CXX executable src/pcem
FAILED: src/pcem
: && /usr/bin/clang -pthread  src/CMakeFiles/pcem.dir/bus/mca.c.o src/CMakeFiles/pcem.dir/bus/pci.c.o src/CMakeFiles/pcem.dir/cdrom/cdrom-image.cc.o src/CMakeFiles/pcem.dir/cdrom/cdrom-null.c.o src/CMakeFiles/pcem.dir/cdrom/cdrom-ioctl-linux.c.o src/CMakeFiles/pcem.dir/codegen/codegen.c.o src/CMakeFiles/pcem.dir/codegen/codegen_accumulate.c.o src/CMakeFiles/pcem.dir/codegen/codegen_allocator.c.o src/CMakeFiles/pcem.dir/codegen/codegen_block.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ir.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_3dnow.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_arith.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_branch.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_fpu_arith.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_fpu_constant.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_fpu_loadstore.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_fpu_misc.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_helpers.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_jump.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_logic.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_misc.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mmx_arith.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mmx_cmp.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mmx_loadstore.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mmx_logic.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mmx_pack.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mmx_shift.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_mov.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_shift.c.o src/CMakeFiles/pcem.dir/codegen/codegen_ops_stack.c.o src/CMakeFiles/pcem.dir/codegen/codegen_reg.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_486.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_686.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_common.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_cyrixiii.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_k6.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_p6.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_pentium.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_winchip.c.o src/CMakeFiles/pcem.dir/codegen/codegen_timing_winchip2.c.o src/CMakeFiles/pcem.dir/cpu/386.c.o src/CMakeFiles/pcem.dir/cpu/386_common.c.o src/CMakeFiles/pcem.dir/cpu/386_dynarec.c.o src/CMakeFiles/pcem.dir/cpu/386_dynarec_ops.c.o src/CMakeFiles/pcem.dir/cpu/808x.c.o src/CMakeFiles/pcem.dir/cpu/cpu.c.o src/CMakeFiles/pcem.dir/cpu/cpu_tables.c.o src/CMakeFiles/pcem.dir/cpu/x86seg.c.o src/CMakeFiles/pcem.dir/cpu/x87.c.o src/CMakeFiles/pcem.dir/cpu/x87_timings.c.o src/CMakeFiles/pcem.dir/devices/cassette.c.o src/CMakeFiles/pcem.dir/devices/esdi_at.c.o src/CMakeFiles/pcem.dir/devices/f82c710_upc.c.o src/CMakeFiles/pcem.dir/devices/nvr.c.o src/CMakeFiles/pcem.dir/devices/ps2_nvr.c.o src/CMakeFiles/pcem.dir/devices/sis496.c.o src/CMakeFiles/pcem.dir/disc/disc.c.o src/CMakeFiles/pcem.dir/disc/disc_fdi.c.o src/CMakeFiles/pcem.dir/disc/disc_img.c.o src/CMakeFiles/pcem.dir/disc/disc_sector.c.o src/CMakeFiles/pcem.dir/dosbox/cdrom_image.cpp.o src/CMakeFiles/pcem.dir/dosbox/dbopl.cpp.o src/CMakeFiles/pcem.dir/dosbox/nukedopl.cpp.o src/CMakeFiles/pcem.dir/dosbox/vid_cga_comp.c.o src/CMakeFiles/pcem.dir/flash/intel_flash.c.o src/CMakeFiles/pcem.dir/flash/rom.c.o src/CMakeFiles/pcem.dir/flash/sst39sf010.c.o src/CMakeFiles/pcem.dir/flash/tandy_eeprom.c.o src/CMakeFiles/pcem.dir/flash/tandy_rom.c.o src/CMakeFiles/pcem.dir/floppy/fdc.c.o src/CMakeFiles/pcem.dir/floppy/fdc37c665.c.o src/CMakeFiles/pcem.dir/floppy/fdc37c93x.c.o src/CMakeFiles/pcem.dir/floppy/fdd.c.o src/CMakeFiles/pcem.dir/hdd/hdd.c.o src/CMakeFiles/pcem.dir/hdd/hdd_esdi.c.o src/CMakeFiles/pcem.dir/hdd/hdd_file.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/cwalk.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/libxml2_encoding.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/minivhd_convert.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/minivhd_create.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/minivhd_io.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/minivhd_manage.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/minivhd_struct_rw.c.o src/CMakeFiles/pcem.dir/hdd/minivhd/minivhd_util.c.o src/CMakeFiles/pcem.dir/ide/ide.c.o src/CMakeFiles/pcem.dir/ide/ide_atapi.c.o src/CMakeFiles/pcem.dir/ide/ide_sff8038i.c.o src/CMakeFiles/pcem.dir/ide/xtide.c.o src/CMakeFiles/pcem.dir/joystick/gameport.c.o src/CMakeFiles/pcem.dir/joystick/joystick_ch_flightstick_pro.c.o src/CMakeFiles/pcem.dir/joystick/joystick_standard.c.o src/CMakeFiles/pcem.dir/joystick/joystick_sw_pad.c.o src/CMakeFiles/pcem.dir/joystick/joystick_tm_fcs.c.o src/CMakeFiles/pcem.dir/keyboard/keyboard.c.o src/CMakeFiles/pcem.dir/keyboard/keyboard_amstrad.c.o src/CMakeFiles/pcem.dir/keyboard/keyboard_at.c.o src/CMakeFiles/pcem.dir/keyboard/keyboard_olim24.c.o src/CMakeFiles/pcem.dir/keyboard/keyboard_pcjr.c.o src/CMakeFiles/pcem.dir/keyboard/keyboard_xt.c.o src/CMakeFiles/pcem.dir/lpt/lpt.c.o src/CMakeFiles/pcem.dir/lpt/lpt_dac.c.o src/CMakeFiles/pcem.dir/lpt/lpt_dss.c.o src/CMakeFiles/pcem.dir/memory/mem.c.o src/CMakeFiles/pcem.dir/memory/mem_bios.c.o src/CMakeFiles/pcem.dir/mfm/mfm_at.c.o src/CMakeFiles/pcem.dir/mfm/mfm_xebec.c.o src/CMakeFiles/pcem.dir/models/82091aa.c.o src/CMakeFiles/pcem.dir/models/acc2036.c.o src/CMakeFiles/pcem.dir/models/acc2168.c.o src/CMakeFiles/pcem.dir/models/acc3221.c.o src/CMakeFiles/pcem.dir/models/acer386sx.c.o src/CMakeFiles/pcem.dir/models/ali1429.c.o src/CMakeFiles/pcem.dir/models/amstrad.c.o src/CMakeFiles/pcem.dir/models/cbm_io.c.o src/CMakeFiles/pcem.dir/models/cmd640.c.o src/CMakeFiles/pcem.dir/models/compaq.c.o src/CMakeFiles/pcem.dir/models/cs8230.c.o src/CMakeFiles/pcem.dir/models/dells200.c.o src/CMakeFiles/pcem.dir/models/dma.c.o src/CMakeFiles/pcem.dir/models/headland.c.o src/CMakeFiles/pcem.dir/models/i430fx.c.o src/CMakeFiles/pcem.dir/models/i430hx.c.o src/CMakeFiles/pcem.dir/models/i430lx.c.o src/CMakeFiles/pcem.dir/models/i430vx.c.o src/CMakeFiles/pcem.dir/models/i440bx.c.o src/CMakeFiles/pcem.dir/models/i440fx.c.o src/CMakeFiles/pcem.dir/models/intel.c.o src/CMakeFiles/pcem.dir/models/jim.c.o src/CMakeFiles/pcem.dir/models/laserxt.c.o src/CMakeFiles/pcem.dir/models/model.c.o src/CMakeFiles/pcem.dir/models/mvp3.c.o src/CMakeFiles/pcem.dir/models/neat.c.o src/CMakeFiles/pcem.dir/models/nmi.c.o src/CMakeFiles/pcem.dir/models/nvr_tc8521.c.o src/CMakeFiles/pcem.dir/models/olivetti_m24.c.o src/CMakeFiles/pcem.dir/models/opti495.c.o src/CMakeFiles/pcem.dir/models/pc87306.c.o src/CMakeFiles/pcem.dir/models/pc87307.c.o src/CMakeFiles/pcem.dir/models/pic.c.o src/CMakeFiles/pcem.dir/models/piix.c.o src/CMakeFiles/pcem.dir/models/piix_pm.c.o src/CMakeFiles/pcem.dir/models/pit.c.o src/CMakeFiles/pcem.dir/models/ps1.c.o src/CMakeFiles/pcem.dir/models/ps2.c.o src/CMakeFiles/pcem.dir/models/ps2_mca.c.o src/CMakeFiles/pcem.dir/models/scamp.c.o src/CMakeFiles/pcem.dir/models/scat.c.o src/CMakeFiles/pcem.dir/models/serial.c.o src/CMakeFiles/pcem.dir/models/sio.c.o src/CMakeFiles/pcem.dir/models/sl82c460.c.o src/CMakeFiles/pcem.dir/models/superxt.c.o src/CMakeFiles/pcem.dir/models/t1000.c.o src/CMakeFiles/pcem.dir/models/t3100e.c.o src/CMakeFiles/pcem.dir/models/um8669f.c.o src/CMakeFiles/pcem.dir/models/um8881f.c.o src/CMakeFiles/pcem.dir/models/vl82c480.c.o src/CMakeFiles/pcem.dir/models/vt82c586b.c.o src/CMakeFiles/pcem.dir/models/w83877tf.c.o src/CMakeFiles/pcem.dir/models/w83977tf.c.o src/CMakeFiles/pcem.dir/models/wd76c10.c.o src/CMakeFiles/pcem.dir/models/xi8088.c.o src/CMakeFiles/pcem.dir/models/zenith.c.o src/CMakeFiles/pcem.dir/mouse/mouse.c.o src/CMakeFiles/pcem.dir/mouse/mouse_msystems.c.o src/CMakeFiles/pcem.dir/mouse/mouse_ps2.c.o src/CMakeFiles/pcem.dir/mouse/mouse_serial.c.o src/CMakeFiles/pcem.dir/networking/ne2000.c.o src/CMakeFiles/pcem.dir/networking/nethandler.c.o src/CMakeFiles/pcem.dir/networking/slirp/bootp.c.o src/CMakeFiles/pcem.dir/networking/slirp/cksum.c.o src/CMakeFiles/pcem.dir/networking/slirp/debug.c.o src/CMakeFiles/pcem.dir/networking/slirp/if.c.o src/CMakeFiles/pcem.dir/networking/slirp/ip_icmp.c.o src/CMakeFiles/pcem.dir/networking/slirp/ip_input.c.o src/CMakeFiles/pcem.dir/networking/slirp/ip_output.c.o src/CMakeFiles/pcem.dir/networking/slirp/mbuf.c.o src/CMakeFiles/pcem.dir/networking/slirp/misc.c.o src/CMakeFiles/pcem.dir/networking/slirp/queue.c.o src/CMakeFiles/pcem.dir/networking/slirp/sbuf.c.o src/CMakeFiles/pcem.dir/networking/slirp/slirp.c.o src/CMakeFiles/pcem.dir/networking/slirp/socket.c.o src/CMakeFiles/pcem.dir/networking/slirp/tcp_input.c.o src/CMakeFiles/pcem.dir/networking/slirp/tcp_output.c.o src/CMakeFiles/pcem.dir/networking/slirp/tcp_subr.c.o src/CMakeFiles/pcem.dir/networking/slirp/tcp_timer.c.o src/CMakeFiles/pcem.dir/networking/slirp/tftp.c.o src/CMakeFiles/pcem.dir/networking/slirp/udp.c.o src/CMakeFiles/pcem.dir/scsi/scsi.c.o src/CMakeFiles/pcem.dir/scsi/scsi_53c400.c.o src/CMakeFiles/pcem.dir/scsi/scsi_aha1540.c.o src/CMakeFiles/pcem.dir/scsi/scsi_cd.c.o src/CMakeFiles/pcem.dir/scsi/scsi_hd.c.o src/CMakeFiles/pcem.dir/scsi/scsi_ibm.c.o src/CMakeFiles/pcem.dir/scsi/scsi_zip.c.o src/CMakeFiles/pcem.dir/sound/sound.c.o src/CMakeFiles/pcem.dir/sound/sound_ad1848.c.o src/CMakeFiles/pcem.dir/sound/sound_adlib.c.o src/CMakeFiles/pcem.dir/sound/sound_adlibgold.c.o src/CMakeFiles/pcem.dir/sound/sound_audiopci.c.o src/CMakeFiles/pcem.dir/sound/sound_azt2316a.c.o src/CMakeFiles/pcem.dir/sound/sound_cms.c.o src/CMakeFiles/pcem.dir/sound/sound_dbopl.cc.o src/CMakeFiles/pcem.dir/sound/sound_emu8k.c.o src/CMakeFiles/pcem.dir/sound/sound_gus.c.o src/CMakeFiles/pcem.dir/sound/sound_mpu401_uart.c.o src/CMakeFiles/pcem.dir/sound/sound_opl.c.o src/CMakeFiles/pcem.dir/sound/sound_pas16.c.o src/CMakeFiles/pcem.dir/sound/sound_ps1.c.o src/CMakeFiles/pcem.dir/sound/sound_pssj.c.o src/CMakeFiles/pcem.dir/sound/sound_resid.cc.o src/CMakeFiles/pcem.dir/sound/sound_sb.c.o src/CMakeFiles/pcem.dir/sound/sound_sb_dsp.c.o src/CMakeFiles/pcem.dir/sound/sound_sn76489.c.o src/CMakeFiles/pcem.dir/sound/sound_speaker.c.o src/CMakeFiles/pcem.dir/sound/sound_ssi2001.c.o src/CMakeFiles/pcem.dir/sound/sound_wss.c.o src/CMakeFiles/pcem.dir/sound/sound_ym7128.c.o src/CMakeFiles/pcem.dir/sound/soundopenal.c.o src/CMakeFiles/pcem.dir/sound/resid-fp/convolve.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/convolve-sse.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/envelope.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/extfilt.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/filter.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/pot.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/sid.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/voice.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave6581_PS_.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave6581_PST.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave6581_P_T.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave6581__ST.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave8580_PS_.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave8580_PST.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave8580_P_T.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave8580__ST.cc.o src/CMakeFiles/pcem.dir/sound/resid-fp/wave.cc.o src/CMakeFiles/pcem.dir/sound/sdl2-midi.c.o src/CMakeFiles/pcem.dir/video/vid_ati18800.c.o src/CMakeFiles/pcem.dir/video/vid_ati28800.c.o src/CMakeFiles/pcem.dir/video/vid_ati68860_ramdac.c.o src/CMakeFiles/pcem.dir/video/vid_ati_eeprom.c.o src/CMakeFiles/pcem.dir/video/vid_ati_mach64.c.o src/CMakeFiles/pcem.dir/video/vid_cga.c.o src/CMakeFiles/pcem.dir/video/vid_cl5429.c.o src/CMakeFiles/pcem.dir/video/vid_colorplus.c.o src/CMakeFiles/pcem.dir/video/vid_compaq_cga.c.o src/CMakeFiles/pcem.dir/video/vid_ddc.c.o src/CMakeFiles/pcem.dir/video/vid_ega.c.o src/CMakeFiles/pcem.dir/video/vid_et4000.c.o src/CMakeFiles/pcem.dir/video/vid_et4000w32.c.o src/CMakeFiles/pcem.dir/video/vid_genius.c.o src/CMakeFiles/pcem.dir/video/vid_hercules.c.o src/CMakeFiles/pcem.dir/video/vid_ht216.c.o src/CMakeFiles/pcem.dir/video/vid_icd2061.c.o src/CMakeFiles/pcem.dir/video/vid_ics2595.c.o src/CMakeFiles/pcem.dir/video/vid_im1024.c.o src/CMakeFiles/pcem.dir/video/vid_incolor.c.o src/CMakeFiles/pcem.dir/video/vid_mda.c.o src/CMakeFiles/pcem.dir/video/vid_mga.c.o src/CMakeFiles/pcem.dir/video/vid_olivetti_m24.c.o src/CMakeFiles/pcem.dir/video/vid_oti037.c.o src/CMakeFiles/pcem.dir/video/vid_oti067.c.o src/CMakeFiles/pcem.dir/video/vid_paradise.c.o src/CMakeFiles/pcem.dir/video/vid_pc1512.c.o src/CMakeFiles/pcem.dir/video/vid_pc1640.c.o src/CMakeFiles/pcem.dir/video/vid_pc200.c.o src/CMakeFiles/pcem.dir/video/vid_pcjr.c.o src/CMakeFiles/pcem.dir/video/vid_pgc.c.o src/CMakeFiles/pcem.dir/video/vid_ps1_svga.c.o src/CMakeFiles/pcem.dir/video/vid_s3.c.o src/CMakeFiles/pcem.dir/video/vid_s3_virge.c.o src/CMakeFiles/pcem.dir/video/vid_sdac_ramdac.c.o src/CMakeFiles/pcem.dir/video/vid_sigma.c.o src/CMakeFiles/pcem.dir/video/vid_stg_ramdac.c.o src/CMakeFiles/pcem.dir/video/vid_svga.c.o src/CMakeFiles/pcem.dir/video/vid_svga_render.c.o src/CMakeFiles/pcem.dir/video/vid_t1000.c.o src/CMakeFiles/pcem.dir/video/vid_t3100e.c.o src/CMakeFiles/pcem.dir/video/vid_tandy.c.o src/CMakeFiles/pcem.dir/video/vid_tandysl.c.o src/CMakeFiles/pcem.dir/video/vid_tgui9440.c.o src/CMakeFiles/pcem.dir/video/vid_tkd8001_ramdac.c.o src/CMakeFiles/pcem.dir/video/vid_tvga.c.o src/CMakeFiles/pcem.dir/video/vid_tvp3026_ramdac.c.o src/CMakeFiles/pcem.dir/video/vid_unk_ramdac.c.o src/CMakeFiles/pcem.dir/video/vid_vga.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_banshee.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_banshee_blitter.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_blitter.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_display.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_fb.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_fifo.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_reg.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_render.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_setup.c.o src/CMakeFiles/pcem.dir/video/vid_voodoo_texture.c.o src/CMakeFiles/pcem.dir/video/vid_wy700.c.o src/CMakeFiles/pcem.dir/video/video.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-main.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-config_sel.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-dialogbox.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-utils.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-app.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-joystick.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-mouse.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-keyboard.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-video.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-config.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-deviceconfig.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-status.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-status.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-thread.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-common.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-video-renderer.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-video-gl3.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-glslp-parser.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-shader_man.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-shaderconfig.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-joystickconfig.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-config-eventbinder.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-createdisc.cc.o src/CMakeFiles/pcem.dir/wx-ui/wx-resources.cpp.o src/CMakeFiles/pcem.dir/wx-ui/wx-hostconfig.c.o src/CMakeFiles/pcem.dir/wx-ui/wx-sdl2-display.c.o src/CMakeFiles/pcem.dir/fdi2raw.c.o src/CMakeFiles/pcem.dir/io.c.o src/CMakeFiles/pcem.dir/mcr.c.o src/CMakeFiles/pcem.dir/pc.c.o src/CMakeFiles/pcem.dir/ppi.c.o src/CMakeFiles/pcem.dir/pzx.c.o src/CMakeFiles/pcem.dir/rtc.c.o src/CMakeFiles/pcem.dir/rtc_tc8521.c.o src/CMakeFiles/pcem.dir/timer.c.o -o src/pcem  -Wl,-rpath,/home/jens/pcem/src:  -L/usr/lib/arm-linux-gnueabihf  -pthread  -lwx_gtk3u_core-3.2  -lwx_baseu-3.2  -lwx_gtk3u_xrc-3.2  /usr/lib/arm-linux-gnueabihf/libopenal.so  /usr/lib/arm-linux-gnueabihf/libOpenGL.so  /usr/lib/arm-linux-gnueabihf/libGLX.so  /usr/lib/arm-linux-gnueabihf/libGLU.so  /usr/lib/arm-linux-gnueabihf/libpcap.so  src/libpcem-plugin-api.so  -L/usr/lib/arm-linux-gnueabihf  -pthread  -lwx_gtk3u_core-3.2  -lwx_baseu-3.2  -lwx_gtk3u_xrc-3.2  /usr/lib/arm-linux-gnueabihf/libSDL2.so && :
/usr/bin/arm-linux-gnueabihf-ld: src/CMakeFiles/pcem.dir/cpu/386_dynarec.c.o: undefined reference to symbol 'atan2@@GLIBC_2.4'
/usr/bin/arm-linux-gnueabihf-ld: /lib/arm-linux-gnueabihf/libm.so.6: error adding symbols: DSO missing from command line
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

To Reproduce

Install Raspberry Pi OS Lite, 32 Bits.

Check out PCem source, install all dependencies (SDL, libwxgtk3.2-dev, clang, cmake, ninja-build), then gibe:

cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release  -DUSE_NETWORKING=ON -DUSE_ALSA=ON -DPLUGIN_ENGINE=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang .
ninja

Expected behavior
Compilation should succeed

Host machine

  • OS: Raspberry Pi OS Bullseye, 32 bits
  • Raspberry Pi 400
@03stevensmi
Copy link

03stevensmi commented Dec 3, 2023

@rabejens Did you ever get this to work?

Is anyone gonna say something?
:/

@ruben-balea
Copy link
Contributor

I compiled v17 on my Pi 3B+ during the covid lockdown and it worked but right now I don't have any Pi ready to use to try to compile it again.
The current PCem version uses another build system that I never tried under Raspbian just because it wasn't available the last time I used a Pi so I think the best option for you is to try v17 too.

I followed those steps:
1.-Install the required dependencies:
sudo apt-get install build-essential
sudo apt-get install libwxgtk3.0
Note: It seems libwxgtk3.0 for later Debian releases is called libwxgtk3.0-0v5 or libwxgtk3.0-gtk3-0v5
sudo apt-get install libsdl2-dev
sudo apt-get install libopenal-dev

2.-Compile PCem:
Extract the contents of http://pcem-emulator.co.uk/files/PCemV17Linux.tar.gz to $HOME/.pcem because v18 will expect that location when someone manages to find how to compile it...
Open a terminal there and run:
./configure --enable-release-build
make

In theory that's it, try to run ./pcem and if it's OK it should display a window telling you that no roms were found.

To enable networking and MIDI sound you can try ./configure --enable-release-build --enable-networking --enable-alsa but I never tried those options on the Pi because I only needed to emulate a pretty basic 386.

Then you need to place some rom files at $HOME/.pcem/roms and run PCem again to create and configure your emulated machines.

While searching for more information about how to compile it I found a good guide on Youtube but it was made using 32-bit Raspbian Buster, you may need to use Buster too, you can download the same 32-bit version used on that video from: https://downloads.raspberrypi.com/raspios_armhf/images/raspios_armhf-2020-12-04/2020-12-02-raspios-buster-armhf.zip

You can try also the closest 64-bit version from the same era: https://downloads.raspberrypi.com/raspios_arm64/images/raspios_arm64-2020-08-24/2020-08-20-raspios-buster-arm64.zip

@03stevensmi
Copy link

Thank you so much, this has been really helpful. :)

@ruben-balea
Copy link
Contributor

👍

@JosepMaJAZ
Copy link
Contributor

version 18 (from dev branch) compiles, but:

  • tested with raspian 32bits ( oldstable since this is a rpi 3b)
  • the arm detection on 32bits arm is not fully working because it differentiates between models, but then the logic checks for an exact name.. I've put that on pull request Fixes to build under arm32 ( raspberry pi on 32bit debian). #261
  • clang has some additional problems to compile pcem. I've put some of them also on pull request Fixes for clang + related bugfixes #263 . (Also, note that current version can't compile slirp, so networking cannot be enabled with clang, at least on msys2)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants