1
Vote

CD-ROM plugin not working

description

Installed edge pcsxr from Ubuntu daily build PPA, hit this bug. Got fed up with Ubuntu and installed Arch Linux as a result of this, and then tried installing both pcsxr-git from Arch AUR, and building it myself. Same issue on all three:
__
/usr/lib/games/psemu/libDFCdrom.so: undefined symbol: mmc_run_cmd
__
or related errors (using plugins I think from 1.9.92):
__
/home/d/.pcsxr/plugins/libgpuPeteXGL2.so.2.0.9: wrong ELF class: ELFCLASS32
/home/d/.pcsxr/plugins/libDFCdrom.so: undefined symbol: mmc_run_cmd
__

Can't open the CD plugin!

Best I can figure is that this is some kind of problem with libcdio, guessing pcsxr is falling behind.

PCSXR tried at 1.9.94 and 1.9.93. libcdio version is 0.94. Kernel is 4.10.11-1-ARCH, x86_64.

file attachments

comments

Solis wrote May 2 at 7:14 PM

Hello djvsh092tn3wig,

/home/d/.pcsxr/plugins/libgpuPeteXGL2.so.2.0.9: wrong ELF class: ELFCLASS32 This means your tring to
run a 32 bit plugin on a 64bit system which does not work. To use that plugin you will need

Multilib system + pcsxr 32bit + plugins 32 = work.
Multilib system + pcsxr 64bit + plugins 32 = does not work.

Pcsxr-1.9.92 came out august 2010. You should
try compiling lastest version of pcsxr. Here are instructions on how to do that.

Please note for sound the alsa sound has a bug with high compatibility mode. Use SDL or OpenAL for sound to get around that issue.

Before compiling i would delete the the old ./pcsxr directory by typing the following. (Backup your memory cards first)

rm -rf ~/.pcsxr

The newest version of pcsxr is 6484236cb028 - 18FEB2017 If you have an issue with xvideo crashing i would download pcsxr d305a9c07851 - 11NOV2016 to get around that issue.

https://pcsxr.codeplex.com/SourceControl/latest

For deb type systems you need the following dependencies.

sudo apt-get install subversion autoconf intltool libtool libsdl1.2-dev libgtk-3-dev libxv-dev libxtst-dev nasm libxxf86vm-dev build-essential libc6-dev

For Antergos Linux 64-bit/Arch i believe this is what you need.

sudo pacman -S libxv libtool sdl subversion libxtst nasm libxxf86vm gtk3 autogen autoconf-2.64 intltool

To compile pcsxr 6484236cb028 - 18FEB2017 do

cd /home/user/Downloads/pcsxr-version

cmake .
ccmake .
make
sudo make install

To compile pcsxr d305a9c07851 - 11NOV2016 follow the instructions below.

Then extract the pcsxr-version you dowloaded.

Then type in a ternimal : cd /home/yourusername/Downloads/pcsxr-version

You will need to do this to these files.

sed -i 's/\r//' '/home/user/Downloads/pcsxr-version/autogen.sh'
sed -i 's/\r//' '/home/user/Downloads/pcsxr-version/strip_fPIC.sh'
sed -i 's/\r//' '/home/user/Downloads/pcsxr-version/configure.ac'
sed -i 's/\r//' '/home/user/Downloads/pcsxr-version/po/Makefile.in.in'

then type: chmod 755 ./autogen.sh

then type: ./autogen.sh

./configure --prefix=/usr --enable-libcdio --enable-sound=sdl --enable-opengl --enable-sio1

then type: make

then type: sudo make install



To uninstall the pcsxr version you just installed.

cd /home/yourusername/Downloads/pcsxr-version

sudo make uninstall

Carlos3xC wrote Jun 12 at 10:16 AM

Hi, I tried to install the pcsxr-git from AUR too, I have Arch Linux 64-bits and the same issue about the CDROM plugin, I couldn't select any.
The exact same output

I was following your instrucctions but those autogen.sh, strip_fPIC.sh, configure.ac and Makefile.in.in doesn't exist in the folder I downloaded from PCSX-Reloaded

/usr/lib/games/psemu/libDFCdrom.so: undefined symbol: mmc_run_cmd

Also I've tried installing with pacman the pcsxr package from multilib but although plugins seems to work well, when I try to load and ISO or even start BIOS I get the "segmentation fault ('core' dumped)" error when I run it from terminal. My language is spanish so I get "Violacion del segmento ('core 'generado)"

I keep searching on the Internet but I just can't figure it out, maybe I have lack of some information. I would really aprecciate someone shed some light on this issue.

Carlos3xC wrote Jun 12 at 10:26 AM

[EDIT]
I copy-pasted djvsh092tn3wig output, my bad.
/usr/lib/games/psemu/libDFCdrom.so: undefined symbol: mmc_run_cmd

I meant I was getting the same output with pcsxr-git from AUR. I also tried the pcsxr-gtk2 package and It work once, I unistalled because I have a hiDPI screen and I coudn't configure any plugin and when I got tired of searching for other versions of pcsxr I reinstalled and video plugin didn't work.

I used pacaur for installing and uninstalling those packages.

djvsh092tn3wig wrote Jun 29 at 2:12 AM

Hi @Solis,

I tried the latest version, it almost worked, except that it crashed after about 5-10 seconds in my game (FF8). Then I followed your instructions for revision d305a9c07851, and got to the make step, which crashed on an error (see attached).

djvsh092tn3wig wrote Jun 29 at 2:13 AM

I don't think it gave the attachment, so here:

cdriso.c:1222:12: error: conflicting types for ‘uncompress2’
static int uncompress2(void *out, unsigned long *out_size, void *in, unsigned long in_size)
        ^~~~~~~~~~~                                                                                             
In file included from psxcommon.h:45:0,
             from cdriso.c:22:                                                                                  
/usr/include/zlib.h:1283:21: note: previous declaration of ‘uncompress2’ was here
ZEXTERN int ZEXPORT uncompress2 OF((Bytef *dest, uLongf *destLen,
                 ^~~~~~~~~~~                                                                                    
cdriso.c: In function ‘aropen’:
cdriso.c:1585:3: warning: ‘archive_read_support_compression_all’ is deprecated [-Wdeprecated-declarations]
r = archive_read_support_compression_all(a);
^
In file included from cdriso.c:1567:0:
/usr/include/archive.h:389:15: note: declared here
__LA_DECL int archive_read_support_compression_all(struct archive *)
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                 
cdriso.c:1612:3: warning: ‘archive_read_support_compression_all’ is deprecated [-Wdeprecated-declarations]
r = archive_read_support_compression_all(a);
^
In file included from cdriso.c:1567:0:
/usr/include/archive.h:389:15: note: declared here
__LA_DECL int archive_read_support_compression_all(struct archive *)
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                 
cdriso.c: In function ‘ISOreadTrack’:
cdriso.c:1996:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(subbuffer, 1, SUB_FRAMESIZE, subHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c: In function ‘ISOopen’:
cdriso.c:1801:4: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&modeTest, 4, 1, cdHandle);                                                                               
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                
cdriso.c: In function ‘cdread_sub_mixed’:
cdriso.c:1215:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(subbuffer, 1, SUB_FRAMESIZE, f);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c: In function ‘parsemds’:
cdriso.c:825:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread(subbuffer, 1, SUB_FRAMESIZE, subHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c: In function ‘ISOopen’:
cdriso.c:1801:4: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&modeTest, 4, 1, cdHandle);                     
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c: In function ‘cdread_sub_mixed’:
cdriso.c:1215:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(subbuffer, 1, SUB_FRAMESIZE, f);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c: In function ‘parsemds’:
cdriso.c:825:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&i, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:835:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&offset, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:841:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&s, 1, sizeof(unsigned short), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:847:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&offset, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:876:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&extra_offset, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:881:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&l, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:887:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&l, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:893:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&l, 1, sizeof(unsigned int), fi);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c: In function ‘handlepbp’:
cdriso.c:951:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(psar_sig, 1, sizeof(psar_sig), cdHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:987:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(psar_sig, 1, sizeof(psar_sig), cdHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:1005:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&toc_entry, 1, sizeof(toc_entry), cdHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:1008:2: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&toc_entry, 1, sizeof(toc_entry), cdHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdriso.c:1013:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&toc_entry, 1, sizeof(toc_entry), cdHandle);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: *** [Makefile:505: cdriso.o] Error 1
make[1]: Leaving directory '/opt/pcsxr-d305a9c07851/libpcsxcore'
make: *** [Makefile:448: all-recursive] Error 1

Solis wrote Jul 9 at 12:32 AM

Hello Djvsh092tn3wig,

I'm not sure what your doing wrong with pcsxr d305a9c07851. However since you can compile
the latest version. I would compile that version then download old xvideo plugin i compiled.
Which you can find it at the link below you. Place it in your /home/user/.pcsxr/plugins. You may need
to delete the link file to the newer xvideo driver before you can copy it there.

Xvideo driver is on the 5th post.
http://ngemu.com/threads/pcsx-reloaded-us-ntsc-compatibility-list.159996/

Solis wrote Jul 9 at 12:43 AM

Hello Carlos3xC,

The autogen.sh, strip_fPIC.sh, configure.ac and Makefile.in.in are only in pcsxr- 6484236cb028. If you downloaded the lastest version of pcsxr they will not be there.

Also make sure you delete your old /home/user/.pcsxr directory because it may conflict with the new
version your are trying to use.

Solis wrote Jul 9 at 12:45 AM

Hello Carlos3xC,

Sorry i meant pcsxr-d305a9c07851.

djvsh092tn3wig wrote Jul 9 at 1:48 AM

I'm still getting a segfault with those plugins in place, link file deleted and all. Something else?

Solis wrote Jul 13 at 1:57 AM

Hello djvsh092tn3wig,

hmm could it be the image is corrupt? If not you try typing

gdb /usr/bin/pcsxr or gdb /usr/local/bin/pcsxr

type: r should look like this (gdb): r

then run the game until it segfaults. Then on terminal then type

(gdb): bt

then copy whats on the terminal make file and it as an attachment.

Solis wrote Jul 13 at 2:02 AM

Hello djvsh092tn3wig,

Also if your on a 64bit system and using the 64bit version of pcsxr make sure you don't have 32bit plugins install or in the /home/user/.pcsxr/plugins. It causes segfaults.

djvsh092tn3wig wrote Jul 15 at 10:51 PM

Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
[Thread 0x7fffcb7fe700 (LWP 10374) exited]
[Thread 0x7fffc97fa700 (LWP 10368) exited]
[Thread 0x7fffea7d4700 (LWP 10372) exited]
[Thread 0x7fffe8fd1700 (LWP 10351) exited]
[Thread 0x7fffe97d2700 (LWP 10369) exited]
[Thread 0x7fffcbfff700 (LWP 10373) exited]
[Thread 0x7fffe9fd3700 (LWP 10371) exited]
[Thread 0x7fffca7fc700 (LWP 10375) exited]
[Thread 0x7fffc9ffb700 (LWP 10376) exited]
[New Thread 0x7fffc9ffb700 (LWP 10383)]
[Thread 0x7fffc9ffb700 (LWP 10383) exited]
[New Thread 0x7fffc9ffb700 (LWP 10384)]
Intel Open Source Technology Center
Mesa DRI Intel(R) Haswell Mobile
[New Thread 0x7fffca7fc700 (LWP 10385)]

Thread 1 "pcsxr" received signal SIGSEGV, Segmentation fault.
MAINThread (arg=<optimized out>) at spu.c:527
527 spu.c: No such file or directory.
(gdb) bt

0 0x00007fffe953f31c in MAINThread (arg=<optimized out>) at spu.c:527

1 0x000000000046f5b6 in ()

2 0x000000000042c807 in ()

3 0x00007fffec6a98ec in ()

4 0x0000000000487e08 in ()

5 0x00007fffec24d8f8 in ()

6 0x0000000000000001 in ()

7 0x00000000004552ba in ()

8 0x000000000041b4d4 in ()

9 0x0000000000416f61 in ()

10 0x000000000044685f in ()

11 0x000000000046f553 in ()

12 0x000000000042c807 in ()

13 0x00007fffec6311ea in ()

14 0x0000000000487e08 in ()

15 0x00007fffec5164d0 in ()

16 0x0000000000000001 in ()

17 0x00000000004552ba in ()

18 0x00007ffff67fcead in g_closure_invoke ()

at /usr/lib/libgobject-2.0.so.0   

19 0x00007ffff680f325 in () at /usr/lib/libgobject-2.0.so.0

---Type <return> to continue, or q <return> to quit---
[1] 0:zsh*

Solis wrote Jul 16 at 10:32 PM

Hello Djvsh092tn3wig,

Since it appears sound is casing the segfault. You can try and to compile with openal or alsa.Make sure
you have openal installed before trying to compile. Make sure you do rm -rf ~/.pcsxr .

For the lastest version of pcsxr you can do this by

cd /home/user/Downloads/pcsxr-version

cmake .
ccmake . then scroll down to sound and can it to openal or alsa

djvsh092tn3wig wrote Jul 17 at 12:03 AM

Hmm...seems to work after I do that and do cp -rv /usr/local/lib64/games/psemu/ ~/.pcsxr/plugins && mkdir ~/.pcsxr/cfg. I used pulse audio instead of sdl.

Solis wrote Jul 19 at 2:14 AM

Hello Djvsh092tn3wig,

Great at least you got it working.:) I would guess there may be something wrong with your sdl
package. You can try asking on the arch forums.