Conversation
|
@ernestow The change made by this PR should not be necessary with epics-base/pvxs#53 or epics-base/pvxs#115. Some added Makefile magic in PVXS should automatically inject a dependency on This mechanics keys off of the Or append to After building, look for the results in |
This variable is set when building PVXS (not P4P). |
|
After, Could be because you auto discover openssl via: "configure/probe-openssl.c" ? ernesto@dev-epicsgw (tls) $ cat cfg/TOOLCHAIN_PVXS.rhel9-x86_64 Add OpenSSL library paths for specific targetsUSR_LDFLAGS_windows-x64-mingw += -L/usr/x86_64-w64-mingw32/lib64 |
|
At runtime, I get: So, then I tried: |
|
Following Michael's advice on how to include required libraries from PVXS. |
|
Sorry, I am re-opening the pull request and will simply update. |
|
“Updated the patch based on review — now using dependencies from "<>/pvxs/cfg/" as suggested. Let me know if further changes are needed.” By the way at run time, I still have the issue with interference python 3.10 and openssl. |
|
@ernestow I am changing this PR to a Draft. Ultimately, the SPVA changes will not require any change to dependent module builds. At present this is not the case with epics-base/pvxs#115 . |
|
Also, I take it that you are not setting It might be interesting to see how your |
|
I have removed the hack of using LD_PRELOAD at run time :) Wordy comment below: How to build P4P with the new PVXS which has TLS support (06/16/25) Note: ===============================================================================================================
|
|
My readelf looks good now, I think: ernesto@dev-epicsgw $ readelf -d python3.11/rhel9-x86_64/p4p/_p4p.so Dynamic section at offset 0x20d540 contains 39 entries: |
|
@ernestow There is difference between our build situations. (not right or wrong, just different) In my case, |
|
That indeed was the issue:
I built shared library for pvxs instead of only static:
(p4p-build-env_tls-1.3) ***@***.*** $ pwd
/sdf/group/cds/sw/epics/users/TestStand/modules/pvxs/latest/lib/rhel9-x86_64
(p4p-build-env_tls-1.3) ***@***.*** $ ls
libpvxs.a libpvxsIoc.a libpvxsIoc.so@ libpvxsIoc.so.1.3* libpvxs.so@ libpvxs.so.1.3*
Works nicely now:
No changes, to P4P except I create a python environment with a newer version of openssl
(p4p-build-env_tls-1.3) ***@***.*** $ bin/rhel9-x86_64/pvagw -h
usage: pvagw [-h] [--no-ban-local] [-v] [--logging LOGGING] [--debug] [-T] [--example-config] [--example-systemd] config
positional arguments:
config Config file
options:
-h, --help show this help message and exit
--no-ban-local Legacy option. Ignored
-v, --verbose Enable basic logging with DEBUG level
--logging LOGGING Use logging config from file (JSON in dictConfig format)
--debug Enable extremely verbose low level PVA debugging
-T, --test-config Read and validate configuration files, then exit w/o starting a gateway. Also prints the names of all
configuration files read.
--example-config Write an example configuration file and exit. "--example-config -" writes to stdout
--example-systemd Write an example systemd unit file and exit "--example-systemd -" writes to stdout
…________________________________
From: mdavidsaver ***@***.***>
Sent: Monday, June 23, 2025 9:40 AM
To: epics-base/p4p ***@***.***>
Cc: Williams Jr., Ernest L. ***@***.***>; Mention ***@***.***>
Subject: Re: [epics-base/p4p] Building P4P against PVXS+TLS (PR #177)
BEWARE: This email originated outside of our organization. DO NOT CLICK links or attachments unless you recognize the sender and know the content is safe.
[https://avatars.githubusercontent.com/u/4429215?s=20&v=4]mdavidsaver left a comment (epics-base/p4p#177)<#177 (comment)>
@ernestow<https://github.com/ernestow> There is difference between our build situations. (not right or wrong, just different)
In my case, _p4p.so is linked against libpvxs.so (the shared library). In your case it is linked against libpvxs.a (the static library).
—
Reply to this email directly, view it on GitHub<#177 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AB44BJESHHGDK3UZ5K4GOXD3FAUZFAVCNFSM6AAAAAB7D2IMTSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSOJXGE3DGMRVHA>.
You are receiving this because you were mentioned.
|
|
Still not should how to use rpath correctly. |
I don't disagree :) I don't work with conda, and so don't know what its developers consider the Right Way. |
Changes made in order to compile P4P with the forked PVXS tls branch.
HOST OS: Rocky 9
Python ENV 3.10
Due to conflicts with openssl library provided by conda at run time I needed the following:
LD_PRELOAD=/usr/lib64/libssl.so:/usr/lib64/libcrypto.so LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH bin/rhel9-x86
_64/pvagw -h
Here is my CONFIG_SITE.local file for reference:
md: edit to be less shouty