66#include < cstdarg>
77
88#include " Logger.h"
9+ #include " Config.h"
910#include " ComponentRegistry.h"
1011
1112// Helper function from ContextualClassifier to format strings
@@ -36,11 +37,11 @@ static ErrCode init(void *arg = nullptr) {
3637 }
3738
3839 // This should match the installed path of libContextualClassifier.so
39- const char * so_name = " /usr/lib /libContextualClassifier.so.1" ;
40- g_cc_handle = dlopen (so_name, RTLD_NOW);
40+ std::string so_name = std::string (LIBDIR_PATH) + " /libContextualClassifier.so.1" ;
41+ g_cc_handle = dlopen (so_name. c_str () , RTLD_NOW);
4142 if (!g_cc_handle) {
4243 LOGE (CLASSIFIER_TAG,
43- format_string (" Failed to dlopen %s: %s" , so_name, dlerror ()));
44+ format_string (" Failed to dlopen %s: %s" , so_name. c_str () , dlerror ()));
4445 // Do not fail the entire URM; just disable classifier functionality.
4546 return RC_SUCCESS;
4647 }
@@ -51,7 +52,7 @@ static ErrCode init(void *arg = nullptr) {
5152 const char *err = dlerror ();
5253 if (err != nullptr || !g_cc_init) {
5354 LOGE (CLASSIFIER_TAG,
54- format_string (" Failed to resolve ccInit in %s: %s" , so_name,
55+ format_string (" Failed to resolve ccInit in %s: %s" , so_name. c_str () ,
5556 err ? err : " unknown" ));
5657 dlclose (g_cc_handle);
5758 g_cc_handle = nullptr ;
@@ -64,7 +65,7 @@ static ErrCode init(void *arg = nullptr) {
6465 err = dlerror ();
6566 if (err != nullptr || !g_cc_term) {
6667 LOGE (CLASSIFIER_TAG,
67- format_string (" Failed to resolve ccTerminate in %s: %s" , so_name,
68+ format_string (" Failed to resolve ccTerminate in %s: %s" , so_name. c_str () ,
6869 err ? err : " unknown" ));
6970 dlclose (g_cc_handle);
7071 g_cc_handle = nullptr ;
0 commit comments