libretro / libretro-fsuae

WIP - fs-uae libretro version (Cross-platform Amiga emulator)
GNU General Public License v2.0
16 stars 9 forks source link

Issue with the generated fsuae_libretro.so #11

Closed ghost closed 5 years ago

ghost commented 6 years ago

I can't run the file in RetroArch. I get the output with the command : "ldd -r fsuae_libretro.so"

linux-vdso.so.1 =>  (0x00007ffed8b20000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fcdf1b18000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fcdf18fb000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fcdf1530000)
/lib64/ld-linux-x86-64.so.2 (0x000055805a7e1000)

undefined symbol: g_str_equal (./fsuae_libretro.so) undefined symbol: g_str_hash (./fsuae_libretro.so) undefined symbol: g_free (./fsuae_libretro.so) undefined symbol: esp_scsi_init (./fsuae_libretro.so) undefined symbol: esp_transfer_data (./fsuae_libretro.so) undefined symbol: alcMakeContextCurrent (./fsuae_libretro.so) undefined symbol: g_get_current_dir (./fsuae_libretro.so) undefined symbol: fs_ml_show_cursor (./fsuae_libretro.so) undefined symbol: alGenSources (./fsuae_libretro.so) undefined symbol: caps_unloadimage (./fsuae_libretro.so) undefined symbol: g_get_system_data_dirs (./fsuae_libretro.so) undefined symbol: fs_emu_menu_mode (./fsuae_libretro.so) undefined symbol: fsin (./fsuae_libretro.so) undefined symbol: png_create_info_struct (./fsuae_libretro.so) undefined symbol: g_cond_clear (./fsuae_libretro.so) undefined symbol: amiga_clipboard_proc_start (./fsuae_libretro.so) undefined symbol: g_cond_signal (./fsuae_libretro.so) undefined symbol: alGetError (./fsuae_libretro.so) undefined symbol: g_queue_new (./fsuae_libretro.so) undefined symbol: g_get_application_name (./fsuae_libretro.so) undefined symbol: png_set_expand (./fsuae_libretro.so) undefined symbol: sinh (./fsuae_libretro.so) undefined symbol: png_read_info (./fsuae_libretro.so) undefined symbol: fs_emu_video_buffer_unlock (./fsuae_libretro.so) undefined symbol: g_get_home_dir (./fsuae_libretro.so) undefined symbol: g_mkdir_with_parents (./fsuae_libretro.so) undefined symbol: isofs_dispose_inode (./fsuae_libretro.so) undefined symbol: g_mutex_clear (./fsuae_libretro.so) undefined symbol: png_set_strip_16 (./fsuae_libretro.so) undefined symbol: esp_reg_write (./fsuae_libretro.so) undefined symbol: g_path_is_absolute (./fsuae_libretro.so) undefined symbol: sincos (./fsuae_libretro.so) undefined symbol: fs_emu_menu_function (./fsuae_libretro.so) undefined symbol: alSourceQueueBuffers (./fsuae_libretro.so) undefined symbol: g_strndup (./fsuae_libretro.so) undefined symbol: lsi_command_complete (./fsuae_libretro.so) undefined symbol: g_utf8_strdown (./fsuae_libretro.so) undefined symbol: lsi_mmio_write (./fsuae_libretro.so) undefined symbol: g_strdelimit (./fsuae_libretro.so) undefined symbol: png_get_io_ptr (./fsuae_libretro.so) undefined symbol: lsi_mmio_read (./fsuae_libretro.so) undefined symbol: png_set_add_alpha (./fsuae_libretro.so) undefined symbol: sin (./fsuae_libretro.so) undefined symbol: png_set_read_fn (./fsuae_libretro.so) undefined symbol: png_destroy_read_struct (./fsuae_libretro.so) undefined symbol: debug_info_find_src_line (./fsuae_libretro.so) undefined symbol: exp (./fsuae_libretro.so) undefined symbol: isofs_openfile (./fsuae_libretro.so) undefined symbol: g_get_current_time (./fsuae_libretro.so) undefined symbol: floatx80_ieee754_remainder (./fsuae_libretro.so) undefined symbol: tms_vsync_handler (./fsuae_libretro.so) undefined symbol: esp_reg_read (./fsuae_libretro.so) undefined symbol: g_queue_push_tail (./fsuae_libretro.so) undefined symbol: lsi710_command_complete (./fsuae_libretro.so) undefined symbol: fs_emu_dialog_create (./fsuae_libretro.so) undefined symbol: g_path_get_basename (./fsuae_libretro.so) undefined symbol: normalizeRoundAndPackFloat64 (./fsuae_libretro.so) undefined symbol: cos (./fsuae_libretro.so) undefined symbol: g_list_append (./fsuae_libretro.so) undefined symbol: g_dir_make_tmp (./fsuae_libretro.so) undefined symbol: alcOpenDevice (./fsuae_libretro.so) undefined symbol: lsi_transfer_data (./fsuae_libretro.so) undefined symbol: g_thread_new (./fsuae_libretro.so) undefined symbol: isofs_mediainfo (./fsuae_libretro.so) undefined symbol: g_build_filename (./fsuae_libretro.so) undefined symbol: caps_loadimage (./fsuae_libretro.so) undefined symbol: lsi_scsi_init (./fsuae_libretro.so) undefined symbol: g_queue_push_head (./fsuae_libretro.so) undefined symbol: amiga_clipboard_init (./fsuae_libretro.so) undefined symbol: roundAndPackUint64 (./fsuae_libretro.so) undefined symbol: isofs_exists (./fsuae_libretro.so) undefined symbol: fs_ml_toggle_fullscreen (./fsuae_libretro.so) undefined symbol: sqrt (./fsuae_libretro.so) undefined symbol: amiga_clipboard_die (./fsuae_libretro.so) undefined symbol: alSourcei (./fsuae_libretro.so) undefined symbol: g_queue_pop_tail (./fsuae_libretro.so) undefined symbol: png_create_read_struct (./fsuae_libretro.so) undefined symbol: g_hash_table_get_keys (./fsuae_libretro.so) undefined symbol: g_list_free (./fsuae_libretro.so) undefined symbol: g_checksum_free (./fsuae_libretro.so) undefined symbol: fcos (./fsuae_libretro.so) undefined symbol: g_mutex_init (./fsuae_libretro.so) undefined symbol: fs_emu_initialize_opengl (./fsuae_libretro.so) undefined symbol: g_hash_table_new_full (./fsuae_libretro.so) undefined symbol: g_strdup (./fsuae_libretro.so) undefined symbol: esp_dma_enable2 (./fsuae_libretro.so) undefined symbol: g_hash_table_insert (./fsuae_libretro.so) undefined symbol: g_strchomp (./fsuae_libretro.so) undefined symbol: alGetSourcei (./fsuae_libretro.so) undefined symbol: g_get_prgname (./fsuae_libretro.so) undefined symbol: encode_l2 (./fsuae_libretro.so) undefined symbol: debug_info_load_hunks (./fsuae_libretro.so) undefined symbol: lsi710_mmio_read (./fsuae_libretro.so) undefined symbol: cosh (./fsuae_libretro.so) undefined symbol: fs_log_enable_stdout (./fsuae_libretro.so) undefined symbol: dlopen (./fsuae_libretro.so) undefined symbol: g_checksum_get_string (./fsuae_libretro.so) undefined symbol: scsi_tape_emulate (./fsuae_libretro.so) undefined symbol: g_ascii_tolower (./fsuae_libretro.so) undefined symbol: atanh (./fsuae_libretro.so) undefined symbol: g_strdup_printf (./fsuae_libretro.so) undefined symbol: g_checksum_update (./fsuae_libretro.so) undefined symbol: g_regex_unref (./fsuae_libretro.so) undefined symbol: tms_reset (./fsuae_libretro.so) undefined symbol: sub_to_deinterleaved (./fsuae_libretro.so) undefined symbol: isofs_readdir (./fsuae_libretro.so) undefined symbol: g_cond_wait_until (./fsuae_libretro.so) undefined symbol: g_malloc (./fsuae_libretro.so) undefined symbol: le16_to_cpu (./fsuae_libretro.so) undefined symbol: DISK_check_change (./fsuae_libretro.so) undefined symbol: lsi_scsi_reset (./fsuae_libretro.so) undefined symbol: g_thread_self (./fsuae_libretro.so) undefined symbol: png_set_packing (./fsuae_libretro.so) undefined symbol: g_rmdir (./fsuae_libretro.so) undefined symbol: g_set_prgname (./fsuae_libretro.so) undefined symbol: fs_emu_stat_queue_init (./fsuae_libretro.so) undefined symbol: x86_doirq (./fsuae_libretro.so) undefined symbol: lsi710_mmio_write (./fsuae_libretro.so) undefined symbol: g_dir_close (./fsuae_libretro.so) undefined symbol: fs_emu_handle_libfsemu_action (./fsuae_libretro.so) undefined symbol: fetestexcept (./fsuae_libretro.so) undefined symbol: g_strsplit (./fsuae_libretro.so) undefined symbol: isofs_unmount (./fsuae_libretro.so) undefined symbol: roundAndPackFloat64 (./fsuae_libretro.so) undefined symbol: asin (./fsuae_libretro.so) undefined symbol: g_regex_match (./fsuae_libretro.so) undefined symbol: roundAndPackFloatx80 (./fsuae_libretro.so) undefined symbol: tms_hsync_handler (./fsuae_libretro.so) undefined symbol: g_str_has_prefix (./fsuae_libretro.so) undefined symbol: png_get_IHDR (./fsuae_libretro.so) undefined symbol: roundAndPackFloat128 (./fsuae_libretro.so) undefined symbol: tan (./fsuae_libretro.so) undefined symbol: x86_xt_ide_bios (./fsuae_libretro.so) undefined symbol: isofs_stat (./fsuae_libretro.so) undefined symbol: fs_ml_input_grab (./fsuae_libretro.so) undefined symbol: fs_emu_menu_or_dialog_is_active (./fsuae_libretro.so) undefined symbol: g_find_program_in_path (./fsuae_libretro.so) undefined symbol: alSourceUnqueueBuffers (./fsuae_libretro.so) undefined symbol: tape_get_info (./fsuae_libretro.so) undefined symbol: alcDestroyContext (./fsuae_libretro.so) undefined symbol: fs_emu_dialog_set_line (./fsuae_libretro.so) undefined symbol: g_regex_new (./fsuae_libretro.so) undefined symbol: log (./fsuae_libretro.so) undefined symbol: alSourcePlay (./fsuae_libretro.so) undefined symbol: fs_emu_menu_init_opengl (./fsuae_libretro.so) undefined symbol: fs_emu_stat_queue_add_entry (./fsuae_libretro.so) undefined symbol: g_hash_table_lookup (./fsuae_libretro.so) undefined symbol: round (./fsuae_libretro.so) undefined symbol: g_get_user_special_dir (./fsuae_libretro.so) undefined symbol: normalizeRoundAndPackFloat128 (./fsuae_libretro.so) undefined symbol: uae_get_amiga_time (./fsuae_libretro.so) undefined symbol: cirrus_init_common (./fsuae_libretro.so) undefined symbol: g_match_info_free (./fsuae_libretro.so) undefined symbol: alcGetIntegerv (./fsuae_libretro.so) undefined symbol: g_strfreev (./fsuae_libretro.so) undefined symbol: normalizeFloat128Subnormal (./fsuae_libretro.so) undefined symbol: esp_dreq (./fsuae_libretro.so) undefined symbol: g_mutex_lock (./fsuae_libretro.so) undefined symbol: g_match_info_fetch (./fsuae_libretro.so) undefined symbol: debug_info_free_file (./fsuae_libretro.so) undefined symbol: alGetString (./fsuae_libretro.so) undefined symbol: g_get_user_config_dir (./fsuae_libretro.so) undefined symbol: alcCreateContext (./fsuae_libretro.so) undefined symbol: tape_alloc (./fsuae_libretro.so) undefined symbol: alBufferData (./fsuae_libretro.so) undefined symbol: g_queue_peek_head (./fsuae_libretro.so) undefined symbol: normalizeRoundAndPackFloat32 (./fsuae_libretro.so) undefined symbol: g_ascii_strdown (./fsuae_libretro.so) undefined symbol: alGenBuffers (./fsuae_libretro.so) undefined symbol: isofs_opendir (./fsuae_libretro.so) undefined symbol: feclearexcept (./fsuae_libretro.so) undefined symbol: g_file_test (./fsuae_libretro.so) undefined symbol: g_mutex_unlock (./fsuae_libretro.so) undefined symbol: acos (./fsuae_libretro.so) undefined symbol: fs_emu_dialog_destroy (./fsuae_libretro.so) undefined symbol: caps_loadtrack (./fsuae_libretro.so) undefined symbol: lsi710_scsi_reset (./fsuae_libretro.so) undefined symbol: g_dir_open (./fsuae_libretro.so) undefined symbol: fs_emu_dialog_show (./fsuae_libretro.so) undefined symbol: caps_loadrevolution (./fsuae_libretro.so) undefined symbol: input_get_default_joystick_analog (./fsuae_libretro.so) undefined symbol: alSourcef (./fsuae_libretro.so) undefined symbol: isofss_fill_file_attrs (./fsuae_libretro.so) undefined symbol: g_queue_peek_head_link (./fsuae_libretro.so) undefined symbol: g_set_application_name (./fsuae_libretro.so) undefined symbol: normalizeFloatx80Subnormal (./fsuae_libretro.so) undefined symbol: getlocaltime (./fsuae_libretro.so) undefined symbol: g_unlink (./fsuae_libretro.so) undefined symbol: g_match_info_matches (./fsuae_libretro.so) undefined symbol: normalizeFloat32Subnormal (./fsuae_libretro.so) undefined symbol: g_checksum_new (./fsuae_libretro.so) undefined symbol: isofs_closedir (./fsuae_libretro.so) undefined symbol: normalizeRoundAndPackFloatx80 (./fsuae_libretro.so) undefined symbol: png_read_end (./fsuae_libretro.so) undefined symbol: roundAndPackInt32 (./fsuae_libretro.so) undefined symbol: amiga_clipboard_task_start (./fsuae_libretro.so) undefined symbol: dlclose (./fsuae_libretro.so) undefined symbol: g_dir_read_name (./fsuae_libretro.so) undefined symbol: roundAndPackFloat32 (./fsuae_libretro.so) undefined symbol: isofs_read (./fsuae_libretro.so) undefined symbol: g_strconcat (./fsuae_libretro.so) undefined symbol: fs_ml_cursor_allowed (./fsuae_libretro.so) undefined symbol: g_queue_pop_head (./fsuae_libretro.so) undefined symbol: g_hash_table_add (./fsuae_libretro.so) undefined symbol: png_read_image (./fsuae_libretro.so) undefined symbol: g_hash_table_remove (./fsuae_libretro.so) undefined symbol: pow (./fsuae_libretro.so) undefined symbol: tms_toggle (./fsuae_libretro.so) undefined symbol: dlsym (./fsuae_libretro.so) undefined symbol: isofs_lseek (./fsuae_libretro.so) undefined symbol: esp_scsi_reset (./fsuae_libretro.so) undefined symbol: alcCloseDevice (./fsuae_libretro.so) undefined symbol: log10 (./fsuae_libretro.so) undefined symbol: fs_ml_set_input_grab (./fsuae_libretro.so) undefined symbol: normalizeFloat64Subnormal (./fsuae_libretro.so) undefined symbol: esp_fake_dma_done (./fsuae_libretro.so) undefined symbol: fsincos (./fsuae_libretro.so) undefined symbol: g_get_monotonic_time (./fsuae_libretro.so) undefined symbol: g_cond_init (./fsuae_libretro.so) undefined symbol: roundAndPackInt64 (./fsuae_libretro.so) undefined symbol: floor (./fsuae_libretro.so) undefined symbol: debug_info_find_symbol (./fsuae_libretro.so) undefined symbol: esp_command_complete (./fsuae_libretro.so) undefined symbol: g_ascii_strcasecmp (./fsuae_libretro.so) undefined symbol: g_strdup_vprintf (./fsuae_libretro.so) undefined symbol: fs_emu_set_overlay_state (./fsuae_libretro.so) undefined symbol: g_ascii_strtod (./fsuae_libretro.so) undefined symbol: amiga_clipboard_got_data (./fsuae_libretro.so) undefined symbol: png_get_rowbytes (./fsuae_libretro.so) undefined symbol: fs_emu_dialog_dismiss (./fsuae_libretro.so) undefined symbol: fs_emu_xml_shader_init (./fsuae_libretro.so) undefined symbol: g_hash_table_size (./fsuae_libretro.so) undefined symbol: tms_free (./fsuae_libretro.so) undefined symbol: GetCurrentThreadId (./fsuae_libretro.so) undefined symbol: alcGetString (./fsuae_libretro.so) undefined symbol: g_strchug (./fsuae_libretro.so) undefined symbol: g_convert (./fsuae_libretro.so) undefined symbol: ceil (./fsuae_libretro.so) undefined symbol: fs_uae_map_keyboard (./fsuae_libretro.so) undefined symbol: g_hash_table_destroy (./fsuae_libretro.so) undefined symbol: g_malloc0 (./fsuae_libretro.so) undefined symbol: isofs_mount (./fsuae_libretro.so) undefined symbol: tanh (./fsuae_libretro.so) undefined symbol: fs_emu_dialog_result (./fsuae_libretro.so) undefined symbol: g_str_has_suffix (./fsuae_libretro.so) undefined symbol: lsi710_transfer_data (./fsuae_libretro.so) undefined symbol: g_checksum_copy (./fsuae_libretro.so) undefined symbol: g_assertion_message_expr (./fsuae_libretro.so) undefined symbol: vga_common_init (./fsuae_libretro.so) undefined symbol: fs_ml_set_video_fsaa (./fsuae_libretro.so) undefined symbol: g_checksum_get_digest (./fsuae_libretro.so) undefined symbol: floorf (./fsuae_libretro.so) undefined symbol: tape_free (./fsuae_libretro.so) undefined symbol: amiga_clipboard_want_data (./fsuae_libretro.so) undefined symbol: isofs_fsize (./fsuae_libretro.so) undefined symbol: atan (./fsuae_libretro.so) undefined symbol: g_list_sort (./fsuae_libretro.so) undefined symbol: g_get_user_data_dir (./fsuae_libretro.so) undefined symbol: g_thread_join (./fsuae_libretro.so) undefined symbol: png_check_sig (./fsuae_libretro.so) undefined symbol: alSourcePause (./fsuae_libretro.so) undefined symbol: alSourceStop (./fsuae_libretro.so) undefined symbol: g_cond_wait (./fsuae_libretro.so) undefined symbol: ftan (./fsuae_libretro.so) undefined symbol: isofs_closefile (./fsuae_libretro.so) undefined symbol: fs_ml_usleep (./fsuae_libretro.so) undefined symbol: lsi710_scsi_init (./fsuae_libretro.so) undefined symbol: debug_info_dump_file (./fsuae_libretro.so) undefined symbol: g_strcmp0 (./fsuae_libretro.so) undefined symbol: g_hash_table_new (./fsuae_libretro.so) undefined symbol: alcIsExtensionPresent (./fsuae_libretro.so)

Tested under Peppermint OS 8 64 bit version ( based on 16.04 repositories ) Any ideas for this issue ?

ghost commented 6 years ago

Second information : I have this with ./autogen.sh

libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, '.'. libtoolize: copying file './ltmain.sh' libtoolize: You should add the contents of the following files to 'aclocal.m4': libtoolize: '/usr/share/aclocal/libtool.m4' libtoolize: '/usr/share/aclocal/ltoptions.m4' libtoolize: '/usr/share/aclocal/ltsugar.m4' libtoolize: '/usr/share/aclocal/ltversion.m4' libtoolize: '/usr/share/aclocal/lt~obsolete.m4' libtoolize: Remember to add 'LT_INIT' to configure.ac. libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, libtoolize: and rerunning libtoolize and aclocal. libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am. libtoolize: 'AC_PROG_RANLIB' is rendered obsolete by 'LT_INIT' configure.ac:41: installing './compile' configure.ac:21: installing './missing' sources/Makefile.am: installing './depcomp'

repojohnray commented 6 years ago

'ldd -r' will indeed generate this kind of output; But the library has to work anyway.

ghost commented 6 years ago

So I reapplied the command : retroarch -L ./fsuae_libretro.so ./a500.fs-uae And I get "Segmentation error". I put the kickstart file (.rom format file) in : /home/jackobo/.config/retroarch/fsuae/Kickstarts

Contents of a500.fs-uae : [config] amiga_model = A500 keep_aspect = 1 scale_y = 2.05 scale_x = 2.05 zoom = 640x512+border floppy_drive_0 = /home/jackobo/disk1.adf

ghost commented 6 years ago

Here is a more complete information about the command :

retroarch -L ./fsuae_libretro.so ./a500.fs-uae --verbose [INFO] RetroArch 1.6.9 (Git e8b10d3) [INFO] Redirecting save file to "./a500.srm". [INFO] Redirecting savestate to "./a500.state". [INFO] === Build ======================================= Capabilities: MMX MMXEXT SSE1 SSE2 SSE3 SSSE3 SSE4 SSE4.2 AVX Built: Nov 21 2017 [INFO] Version: 1.6.9 [INFO] Git: e8b10d3 [INFO] ================================================= [INFO] [Config]: Loading default config. [INFO] [Config]: loading config from: (null). [INFO] Looking for config in: "/home/jackobo/.config/retroarch/retroarch.cfg". [INFO] Loading dynamic libretro core from: "/home/jackobo/Downloads/libretro-fsuae-libretro-fsuae/fsuae_libretro.so" [ERROR] Failed to open libretro core: "/home/jackobo/Downloads/libretro-fsuae-libretro-fsuae/fsuae_libretro.so" [ERROR] Error(s): /home/jackobo/Downloads/libretro-fsuae-libretro-fsuae/fsuae_libretro.so: undefined symbol: g_str_equal Erreur de segmentation (Segmentation error)

ghost commented 6 years ago

Issue solved but in a manual way : I must add " -lz -lpthread -lglib-2.0 -lpng12 -lgthread-2.0 -pthread -lglib-2.0 -lm -lc -lopenal" to solve the segmentation error but now i get a black screen. Time to continue the next tests for me ^^

repojohnray commented 5 years ago

The procedure described by README.md using configure is the right one, and this one is working. I don't have yet a properly working Makefile.libretro (I have a black screen too with Makefile.libretro).