nnstreamer / nntrainer

NNtrainer is Software Framework for Training Neural Network Models on Devices.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Conflict of Android build with NDK r25c?

KirillP2323 opened this issue · comments

Hello, I'm following instructions to install ResNetJNI app to android.
When building with NDK r25c, there are many warnings:

full logs
```
Found ninja-1.10.0 at /usr/bin/ninja
~/Projects/nnbuilder/nntrainer ~/Projects/nnbuilder/nntrainer
~/Projects/nnbuilder/nntrainer/builddir ~/Projects/nnbuilder/nntrainer ~/Projects/nnbuilder/nntrainer
[1/2] Generating ndk-build with a custom command.
[arm64-v8a] Prebuilt       : libc++_shared.so <= <NDK>/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/aarch64-linux-android/
[arm64-v8a] Prebuilt       : libnnstreamer-native.so <= /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/builddir/ml-api-inference/lib/arm64-v8a/
[arm64-v8a] Compile++      : nntrainer <= nntrainer_logger.cpp
[arm64-v8a] Compile++      : nntrainer <= iteration_queue.cpp
[arm64-v8a] Compile++      : nntrainer <= data_iteration.cpp
[arm64-v8a] Compile++      : nntrainer <= remap_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/remap_realizer.cpp:14:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= previous_input_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/previous_input_realizer.cpp:19:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= bn_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/bn_realizer.cpp:15:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= loss_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/loss_realizer.cpp:15:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= input_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/input_realizer.cpp:14:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= flatten_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/flatten_realizer.cpp:17:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= activation_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/activation_realizer.cpp:18:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : ccapi-nntrainer <= factory.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/api/ccapi/src/factory.cpp:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:41:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/api/ccapi/src/factory.cpp:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:43:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:161:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  Manager(Manager &&) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move constructor of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move constructor
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy constructor of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy constructor
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy constructor is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/api/ccapi/src/factory.cpp:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:43:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:168:12: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  Manager &operator=(Manager &&) noexcept = default;
           ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move assignment operator of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move assignment operator
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy assignment operator of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy assignment operator
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy assignment operator is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
3 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= databuffer.cpp
[arm64-v8a] Compile++      : nntrainer <= slice_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/slice_realizer.cpp:15:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= multiout_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/multiout_realizer.cpp:21:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= databuffer_factory.cpp
[arm64-v8a] Compile++      : nntrainer <= random_data_producers.cpp
[arm64-v8a] Compile++      : nntrainer <= kld_loss_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= loss_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= func_data_producer.cpp
[arm64-v8a] Compile++      : nntrainer <= mse_loss_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= cross_entropy_sigmoid_loss_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= raw_file_data_producer.cpp
[arm64-v8a] Compile++      : nntrainer <= recurrent_realizer.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/recurrent_realizer.cpp:22:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= ini_interpreter.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/compiler/ini_interpreter.cpp:21:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= constant_derivative_loss_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= cross_entropy_softmax_loss_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= dir_data_producers.cpp
[arm64-v8a] Compile++      : nntrainer <= addition_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= activation_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= attention_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= app_context.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/app_context.cpp:56:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:44:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  LSTMLayer(LSTMLayer &&rhs) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:28:19: note: move constructor of 'LSTMLayer' is implicitly deleted because base class 'nntrainer::LSTMCore' has a deleted move constructor
class LSTMLayer : public LSTMCore {
                  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstmcell_core.h:29:18: note: copy constructor of 'LSTMCore' is implicitly deleted because base class 'nntrainer::LayerImpl' has a deleted copy constructor
class LSTMCore : public LayerImpl {
                 ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_impl.h:66:3: note: copy constructor is implicitly deleted because 'LayerImpl' has a user-declared move constructor
  LayerImpl(LayerImpl &&rhs) noexcept = default;
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/app_context.cpp:56:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:50:14: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  LSTMLayer &operator=(LSTMLayer &&rhs) = default;
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:28:19: note: move assignment operator of 'LSTMLayer' is implicitly deleted because base class 'nntrainer::LSTMCore' has a deleted move assignment operator
class LSTMLayer : public LSTMCore {
                  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstmcell_core.h:29:18: note: copy assignment operator of 'LSTMCore' is implicitly deleted because base class 'nntrainer::LayerImpl' has a deleted copy assignment operator
class LSTMCore : public LayerImpl {
                 ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_impl.h:66:3: note: copy assignment operator is implicitly deleted because 'LayerImpl' has a user-declared move constructor
  LayerImpl(LayerImpl &&rhs) noexcept = default;
  ^
2 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= concat_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= multiout_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= flatten_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= input_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= bn_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= fc_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= mol_attention_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= conv1d_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= layer_normalization_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= multi_head_attention_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= preprocess_l2norm_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= preprocess_translate_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= preprocess_flip_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= conv2d_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= pooling2d_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= embedding.cpp
[arm64-v8a] Compile++      : nntrainer <= rnncell.cpp
[arm64-v8a] Compile++      : nntrainer <= rnn.cpp
[arm64-v8a] Compile++      : nntrainer <= lstmcell_core.cpp
[arm64-v8a] Compile++      : nntrainer <= layer_node.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.cpp:25:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
1 warning generated.
[arm64-v8a] Compile++      : nntrainer <= lstmcell.cpp
[arm64-v8a] Compile++      : nntrainer <= permute_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= split_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= layer_impl.cpp
[arm64-v8a] Compile++      : nntrainer <= acti_func.cpp
[arm64-v8a] Compile++      : nntrainer <= time_dist.cpp
[arm64-v8a] Compile++      : nntrainer <= zoneout_lstmcell.cpp
[arm64-v8a] Compile++      : nntrainer <= common_properties.cpp
[arm64-v8a] Compile++      : nntrainer <= lstm.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.cpp:15:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:44:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  LSTMLayer(LSTMLayer &&rhs) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:28:19: note: move constructor of 'LSTMLayer' is implicitly deleted because base class 'nntrainer::LSTMCore' has a deleted move constructor
class LSTMLayer : public LSTMCore {
                  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstmcell_core.h:29:18: note: copy constructor of 'LSTMCore' is implicitly deleted because base class 'nntrainer::LayerImpl' has a deleted copy constructor
class LSTMCore : public LayerImpl {
                 ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_impl.h:66:3: note: copy constructor is implicitly deleted because 'LayerImpl' has a user-declared move constructor
  LayerImpl(LayerImpl &&rhs) noexcept = default;
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.cpp:15:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:50:14: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  LSTMLayer &operator=(LSTMLayer &&rhs) = default;
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstm.h:28:19: note: move assignment operator of 'LSTMLayer' is implicitly deleted because base class 'nntrainer::LSTMCore' has a deleted move assignment operator
class LSTMLayer : public LSTMCore {
                  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/lstmcell_core.h:29:18: note: copy assignment operator of 'LSTMCore' is implicitly deleted because base class 'nntrainer::LayerImpl' has a deleted copy assignment operator
class LSTMCore : public LayerImpl {
                 ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_impl.h:66:3: note: copy assignment operator is implicitly deleted because 'LayerImpl' has a user-declared move constructor
  LayerImpl(LayerImpl &&rhs) noexcept = default;
  ^
2 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= optimizer_devel.cpp
[arm64-v8a] Compile++      : nntrainer <= dropout.cpp
[arm64-v8a] Compile++      : nntrainer <= grucell.cpp
[arm64-v8a] Compile++      : nntrainer <= sgd.cpp
[arm64-v8a] Compile++      : nntrainer <= identity_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= gru.cpp
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/gru.cpp:426:25: warning: braces around scalar initializer [-Wbraced-scalar-init]
  Tensor dh_nx = Tensor({unit});
                        ^~~~~~
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/gru.cpp:451:26: warning: braces around scalar initializer [-Wbraced-scalar-init]
        prev_hs = Tensor({unit});
                         ^~~~~~
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/gru.cpp:487:28: warning: braces around scalar initializer [-Wbraced-scalar-init]
      Tensor temp = Tensor({unit});
                           ^~~~~~
3 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= optimizer_context.cpp
[arm64-v8a] Compile++      : nntrainer <= model_common_properties.cpp
[arm64-v8a] Compile++      : nntrainer <= reshape_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= reduce_mean_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= centroid_knn.cpp
[arm64-v8a] Compile++      : nntrainer <= blas_interface.cpp
[arm64-v8a] Compile++      : nntrainer <= positional_encoding_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= layer_context.cpp
[arm64-v8a] Compile++      : nntrainer <= cache_elem.cpp
[arm64-v8a] Compile++      : nntrainer <= dynamic_training_optimization.cpp
[arm64-v8a] Compile++      : nntrainer <= cache_loader.cpp
[arm64-v8a] Compile++      : nntrainer <= tflite_layer.cpp
[arm64-v8a] Compile++      : nntrainer <= basic_planner.cpp
[arm64-v8a] Compile++      : nntrainer <= weight.cpp
[arm64-v8a] Compile++      : nntrainer <= var_grad.cpp
[arm64-v8a] Compile++      : nntrainer <= adam.cpp
[arm64-v8a] Compile++      : nntrainer <= lazy_tensor.cpp
[arm64-v8a] Compile++      : nntrainer <= optimized_v1_planner.cpp
[arm64-v8a] Compile++      : nntrainer <= lr_scheduler_constant.cpp
[arm64-v8a] Compile++      : nntrainer <= cache_pool.cpp
[arm64-v8a] Compile++      : nntrainer <= swap_device.cpp
[arm64-v8a] Compile++      : nntrainer <= lr_scheduler_exponential.cpp
[arm64-v8a] Compile++      : nntrainer <= optimized_v2_planner.cpp
[arm64-v8a] Compile++      : nntrainer <= memory_pool.cpp
[arm64-v8a] Compile++      : nntrainer <= model_loader.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.cpp:19:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.h:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:41:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.cpp:19:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.h:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:43:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:161:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  Manager(Manager &&) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move constructor of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move constructor
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy constructor of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy constructor
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy constructor is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.cpp:19:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.h:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:43:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:168:12: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  Manager &operator=(Manager &&) noexcept = default;
           ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move assignment operator of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move assignment operator
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy assignment operator of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy assignment operator
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy assignment operator is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
3 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= task_executor.cpp
[arm64-v8a] Compile++      : nntrainer <= optimized_v3_planner.cpp
[arm64-v8a] Compile++      : nntrainer <= lr_scheduler_step.cpp
[arm64-v8a] Compile++      : nntrainer <= optimizer_wrapped.cpp
[arm64-v8a] Compile        : iniparser <= dictionary.c
[arm64-v8a] Install        : libnnstreamer-native.so => /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/builddir/jni/arm64-v8a/libnnstreamer-native.so
[arm64-v8a] Install        : libc++_shared.so => /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/builddir/jni/arm64-v8a/libc++_shared.so
[arm64-v8a] Compile        : iniparser <= iniparser.c
[arm64-v8a] StaticLibrary  : libiniparser.a
[arm64-v8a] Compile++      : nntrainer <= tensor_pool.cpp
[arm64-v8a] Compile++      : nntrainer <= tensor_dim.cpp
[arm64-v8a] Compile++      : nntrainer <= manager.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.cpp:37:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.cpp:42:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:161:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  Manager(Manager &&) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move constructor of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move constructor
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy constructor of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy constructor
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy constructor is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.cpp:42:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:168:12: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  Manager &operator=(Manager &&) noexcept = default;
           ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move assignment operator of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move assignment operator
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy assignment operator of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy assignment operator
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy assignment operator is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
3 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= tensor.cpp
[arm64-v8a] Compile++      : nntrainer <= graph_core.cpp
[arm64-v8a] Compile++      : nntrainer <= node_exporter.cpp
[arm64-v8a] Compile++      : nntrainer <= connection.cpp
[arm64-v8a] Compile++      : nntrainer <= base_properties.cpp
[arm64-v8a] Compile++      : nntrainer <= profiler.cpp
[arm64-v8a] Compile++      : nntrainer <= nntr_threads.cpp
[arm64-v8a] Compile++      : nntrainer <= util_func.cpp
[arm64-v8a] Compile++      : nntrainer <= ini_wrapper.cpp
[arm64-v8a] Compile++      : nntrainer <= network_graph.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.cpp:33:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.cpp:37:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:161:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  Manager(Manager &&) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move constructor of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move constructor
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy constructor of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy constructor
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy constructor is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.cpp:37:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:168:12: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  Manager &operator=(Manager &&) noexcept = default;
           ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move assignment operator of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move assignment operator
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy assignment operator of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy assignment operator
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy assignment operator is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
3 warnings generated.
[arm64-v8a] Compile++      : nntrainer <= neuralnet.cpp
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.cpp:40:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.h:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:41:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/layers/layer_node.h:346:8: warning: 'getTrainable' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
  bool getTrainable() const;
       ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/graph_node.h:79:16: note: overridden virtual function is here
  virtual bool getTrainable() const = 0;
               ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.cpp:40:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.h:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:43:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:161:3: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
  Manager(Manager &&) noexcept = default;
  ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move constructor of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move constructor
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy constructor of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy constructor
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy constructor is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.cpp:40:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/model_loader.h:22:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/models/neuralnet.h:43:
In file included from /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/graph/network_graph.h:27:
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:168:12: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
  Manager &operator=(Manager &&) noexcept = default;
           ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/manager.h:489:14: note: move assignment operator of 'Manager' is implicitly deleted because field 'weight_pool' has a deleted move assignment operator
  TensorPool weight_pool; /**< tensor pool to request tensors */
             ^
/home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/nntrainer/tensor/tensor_pool.h:389:32: note: copy assignment operator of 'TensorPool' is implicitly deleted because field 'cache_loader' has a deleted copy assignment operator
  std::unique_ptr<CacheLoader> cache_loader; /**< memory pool for the tensors */
                               ^
/home/CORP/k.paramonov/Projects/android-ndk-r25c-linux/android-ndk-r25c/sources/cxx-stl/llvm-libc++/include/memory:2577:3: note: copy assignment operator is implicitly deleted because 'unique_ptr<nntrainer::CacheLoader>' has a user-declared move constructor
  unique_ptr(unique_ptr&& __u) _NOEXCEPT
  ^
3 warnings generated.
[arm64-v8a] SharedLibrary  : libnntrainer.so
[arm64-v8a] SharedLibrary  : libccapi-nntrainer.so
[arm64-v8a] Install        : libccapi-nntrainer.so => /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/builddir/jni/arm64-v8a/libccapi-nntrainer.so
[arm64-v8a] SharedLibrary  : libcapi-nntrainer.so
[arm64-v8a] Install        : libcapi-nntrainer.so => /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/builddir/jni/arm64-v8a/libcapi-nntrainer.so
[arm64-v8a] Install        : libnntrainer.so => /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/builddir/jni/arm64-v8a/libnntrainer.so
```

The build finishes successfully, but when I launch ResNetJNI application, and click on "TRAIN" button, the app crashes and I get the following Logcat:

2020-11-03 03:35:05.525 24418-24418 nntrainer               com.applications.resnetjni           D  create Model in JNI
...
2020-11-03 03:35:05.527 24418-24418 nntrainer               com.applications.resnetjni           D  [AppContext]  conf path: /etc/nntrainer.ini
2020-11-03 03:35:05.527 24418-24418 nntrainer               com.applications.resnetjni           W  [AppContext]  conf path does not exist, skip getting plugin path from the conf
2020-11-03 03:35:05.527 24418-24418 nntrainer               com.applications.resnetjni           W  Model loss property is deprecated, use loss layer directly instead
2020-11-03 03:35:05.529 24418-24418 libc++abi               com.applications.resnetjni           E  terminating with uncaught exception of type std::invalid_argument: stoul: no conversion
...

I think that's an issue with conflicting NDK version, but if I use the r21e version, the build fails entirely.

:octocat: cibot: Thank you for posting issue #2203. The person in charge will reply soon.

Also, here are the warnings from gradle build, which might be useful:

$ ./gradlew build

> Configure project :app
WARNING: The option 'android.useDeprecatedNdk' is deprecated.
The current default is 'false'.
It has been removed from the current version of the Android Gradle plugin.
NdkCompile is no longer supported

> Task :app:stripDebugDebugSymbols
Unable to strip the following libraries, packaging them as they are: libc++_shared.so, libccapi-nntrainer.so, libnntrainer.so, libresnet_jni.so.

> Task :app:stripReleaseDebugSymbols
Unable to strip the following libraries, packaging them as they are: libc++_shared.so, libccapi-nntrainer.so, libnntrainer.so, libresnet_jni.so.

> Task :app:compileDebugJavaWithJavac
Note: /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/Applications/Android/ResnetJNI/app/src/main/java/com/applications/resnetjni/MainActivity.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

> Task :app:compileReleaseJavaWithJavac
Note: /home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/Applications/Android/ResnetJNI/app/src/main/java/com/applications/resnetjni/MainActivity.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

> Task :app:lintReportDebug
Wrote HTML report to file:///home/CORP/k.paramonov/Projects/nnbuilder/nntrainer/Applications/Android/ResnetJNI/app/build/reports/lint-results-debug.html

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/8.0/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 9s

The issue was resolved by adding the training data into the device.
Initially when I pressed "DATA" button on the app, it crashed. The reason was that I added data assets to "asset" folder, but it should be located in the "assets" folder (I think there is a misspelling in instructions here: https://github.com/nnstreamer/nntrainer/tree/main/Applications/Android/ResnetJNI).
When I moved the data to "assets" directory, and rebuild apk, I could transfer the data successfully, and the training is performed successfully.
There is still an issue of the app crashing in the corner case when there is no data to be trained on, but the issue for me is resolved.