Home
Developer Resources
QNX RTOS v4
QNX RTOS v4 Knowledge Base

QNX RTOS v4 Knowledge Base

Foundry27
Foundry27
QNX RTOS v4 project
Resources

QNX RTOS v4 Knowledge Base

Title Error: phlib_s11:could not install shared object phlib_s11 File exists
Ref. No. QNX.000009872
Category(ies) Installation
Issue Our test setup to embed Photon has the following error message which looks like it's caused by running pdm or pterm.
x09phlib_s11:could not install shared object phlib_s11 File exists
x09Could not link shared object 'phlib_s11'- No such file or directiory.

Our setup script copied this file to the ramdisk before execution using the following command:

x09cp -v -n -c /hd0/qnx4/photon/bin/phlib_s11 /pcfd/qnx/photon/bin/phlib_s11

What could we be doing wrong?


Solution The problem is that the auto-loading mechanism built into QNX4 shared libraries is not quite reliable when two processes are trying to use it at the same time. What happens is that two processes notice that the shared object doesn't exist and both try to create it, but only one succeed, and the other fails with an EEXIST.
The workaround is to manually load the shared library.

There is no point in having it on the ramdisk. Instead of copying it, just run it. This will load the shared library into an object in /dev/shmem, and once it is in there, nobody will look for the executable.