fabsig/GPBoost

Symbol not found: __ZTHN8LightGBM7Network13num_machines_E

barracuda156 opened this issue · 2 comments

Any idea why this fails?

/opt/local/bin/g++-mp-12 -std=gnu++17 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/opt/local/Library/Frameworks/R.framework/Resources/lib -Wl,-headerpad_max_install_names -Wl,-rpath,/opt/local/lib/libgcc -L/opt/local/lib -lMacportsLegacySupport -arch ppc -o gpboost.so boosting/boosting.o boosting/gbdt.o boosting/gbdt_model_text.o boosting/gbdt_prediction.o boosting/prediction_early_stop.o io/bin.o io/config.o io/config_auto.o io/dataset.o io/dataset_loader.o io/file_io.o io/json11.o io/metadata.o io/parser.o io/train_share_states.o io/tree.o metric/dcg_calculator.o metric/metric.o objective/objective_function.o network/ifaddrs_patch.o network/linker_topo.o network/linkers_mpi.o network/linkers_socket.o network/network.o treelearner/data_parallel_tree_learner.o treelearner/feature_parallel_tree_learner.o treelearner/gpu_tree_learner.o treelearner/linear_tree_learner.o treelearner/serial_tree_learner.o treelearner/tree_learner.o treelearner/voting_parallel_tree_learner.o c_api.o gpboost_R.o re_model.o sparse_matrix_utils.o GP_utils.o DF_utils.o Vecchia_utils.o cs_spsolve.o cs_reach.o cs_dfs.o -fopenmp -pthread -F/opt/local/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
warning: /opt/local/bin/nm: no name list
warning: /opt/local/bin/nm: no name list
warning: /opt/local/bin/nm: no name list
installing to /opt/local/var/macports/build/_opt_PPCRosettaPorts_R_R-gpboost/R-gpboost/work/gpboost/gpboost.Rcheck/00LOCK-gpboost/00new/gpboost/libs
** R
** data
** demo
** byte-compile and prepare package for lazy loading
R6Class GPModel: finalize() method is public, but it should be private as of R6 2.4.0. This code will continue to work, but in a future version of R6, finalize() will be required to be private.
R6Class gpb.Booster: finalize() method is public, but it should be private as of R6 2.4.0. This code will continue to work, but in a future version of R6, finalize() will be required to be private.
R6Class gpb.Dataset: finalize() method is public, but it should be private as of R6 2.4.0. This code will continue to work, but in a future version of R6, finalize() will be required to be private.
R6Class gpb.Predictor: finalize() method is public, but it should be private as of R6 2.4.0. This code will continue to work, but in a future version of R6, finalize() will be required to be private.
** help
*** installing help indices
*** copying figures
** building package indices
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for ‘gpboost’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/opt/local/var/macports/build/_opt_PPCRosettaPorts_R_R-gpboost/R-gpboost/work/gpboost/gpboost.Rcheck/00LOCK-gpboost/00new/gpboost/libs/gpboost.so':
  dlopen(/opt/local/var/macports/build/_opt_PPCRosettaPorts_R_R-gpboost/R-gpboost/work/gpboost/gpboost.Rcheck/00LOCK-gpboost/00new/gpboost/libs/gpboost.so, 6): Symbol not found: __ZTHN8LightGBM7Network13num_machines_E
  Referenced from: /opt/local/var/macports/build/_opt_PPCRosettaPorts_R_R-gpboost/R-gpboost/work/gpboost/gpboost.Rcheck/00LOCK-gpboost/00new/gpboost/libs/gpboost.so
  Expected in: dynamic lookup

Error: loading failed
Execution halted
ERROR: loading failed
svacchanda$ nm -arch ppc -g /opt/local/var/macports/build/_opt_PPCRosettaPorts_R_R-gpboost/R-gpboost/work/gpboost/gpboost.Rcheck/00_pkg_src/gpboost/src/gpboost.so | grep num_machines
000b7c60 T __ZN8LightGBM7Network12num_machinesEv
         U __ZTHN8LightGBM7Network13num_machines_E
0031a3f4 D ___emutls_v._ZN8LightGBM7Network13num_machines_E