Question: static link tpm2-tss
Opened this issue · 1 comments
The version of tpm2-tss I am using is 3.2. x, and the application uses static linking to link tpm2-tss. The statically linked libraries include:
- libtss2-sys.a
- libtss2-esys.a
- libtss2-tctildr.a
- libtss2-mu.a
- libtss2-tcti-mssim.a
- libtss2-tcti-device.a
- libtss2-fapi.a
- libtss2-rc.a
But for the tss runtime, still look for the dynamic link library: libtss2-tcti-device.so, and the log is as follows
debug:tcti:src/tss2-tcti/tctildr.c:159:tctildr_conf_parse() name_conf: "device:/dev/tpmrm0"
debug:tcti:src/tss2-tcti/tctildr.c:177:tctildr_conf_parse() TCTI name: "device"
debug:tcti:src/tss2-tcti/tctildr.c:182:tctildr_conf_parse() TCTI conf: "/dev/tpmrm0"
debug:tcti:src/tss2-tcti/tctildr-dl.c:299:tctildr_get_tcti() name: "device", conf: "/dev/tpmrm0"
trace:tcti:src/tss2-tcti/tctildr-dl.c:136:tcti_from_file() Attempting to load TCTI file: device
debug:tcti:src/tss2-tcti/tctildr-dl.c:92:handle_from_name() Could not load TCTI file: "device": device: cannot open shared object file: No such file or directory
debug:tcti:src/tss2-tcti/tctildr-dl.c:107:handle_from_name() Could not load TCTI file "device": libtss2-tcti-device.so.0: cannot open shared object file: No such file or directory
debug:tcti:src/tss2-tcti/tctildr-dl.c:120:handle_from_name() Failed to load TCTI for name "device": libtss2-tcti-device.so: cannot open shared object file: No such file or directory
ERROR:tcti:src/tss2-tcti/tctildr.c:428:Tss2_TctiLdr_Initialize_Ex() Failed to instantiate TCTI
Is there a way to achieve pure static linking? thank you
Have you had a look at the configure option --enable-nodl
? This might be what you are searching for.