SDL-Hercules-390 / hyperion

The SDL Hercules 4.x Hyperion version of the System/370, ESA/390, and z/Architecture Emulator
Other
240 stars 90 forks source link

*LD_LIBRARY_PATH, rxapi #482

Closed atncsj6h closed 2 years ago

atncsj6h commented 2 years ago

*LD_LIBRARY_PATH

The only system I know that has some quirks about LD_LIBRARY_PATH setup is Apple. For security reasons, Apple does not percolate to shell scripts the LD_LIBRARY_PATH thingies. That's the reason why on Apple only 211 tests are run instead of 212 (omitting the ooRexx related one; just checked on FreeBSD13).

I use the same .zprofile on all my systems, real/vrtual, and I export both the DYLD.. and the LD... things.

BUT... If somebody uses a script to handle the Hercules arguments, then inside the script there should be something like:

if  [[ "$( which rexx )". != "". ]] ; then
  pref=$( dirname $( which  rexx ) )
  pref=$( dirname ${pref} )
  export DYLD_LIBRARY_PATH=$pref/lib
  export LD_LIBRARY_PATH=$pref/lib
fi
rxapi

Certainly there are differences in the rxapi daemon between Windows and Unix like systems under Windows. For example, to build and install ooRexx, the rxapi daemon must be killed.

From the ooRexx CMakeLists.txt:

# Kill the rxapi daemon whenever we have to build, otherwise the build
# will fail.  Unfortunately, the killing of the process is not immediate,
# so we attach this as a dependency to multiple early pieces of the project
# to give it a chance to free up the file.

At least on Unix like systems, there is no need to start the rxapi daemon beforehand.

I just killed the rxapi process, and Hercules came up with ooRexx enabled, both on Apple and FreeBSD. And when I killed the rxapi process with Hercules still active, the Hercules exec command (which invokes a Rexx exec) ran successfully.

This on Apple and on FreeBSD.

enrico

Fish-Git commented 2 years ago

Hi enrico!

It's unclear to me what your GitHub Issue is reporting (or asking for).

Are you reporting a bug in Hercules? Or are you requesting we make a minor modification to something? (to the Hercules build procedure for example?) Or are you pointing out incorrect information in our documentation?

What is it you are trying to tell us?

Thanks!

atncsj6h commented 2 years ago

Hi Fish!

Somebody (unfortunately, when I posted, I forgot to quote the source) made some remarks about the perceived odd behavior when interfacing ooRexx from Hercules.

I was also trying to explain why, when running make check, one test (which requires rexx) is not run. No bug. No question. Just a clarification of the DYLD_LIBRARY_PATH behavior when running Hercules from a shell script under the most recent macOS versions.

cheers

enrico

Fish-Git commented 2 years ago

Hmmm... So this GitHub Issue does not describe a problem/bug that needs to be fixed, but rather is simply helpful information that other Apple Mac users might find helpful if/when they have trouble with Rexx? Yes?

Okay! That's fine! That's cool! I guess I should label this issue as "Discussion" then, and then close it, eh?

Thanks, Enrico!