Author Archives: Robins

[Solved] Error: Failure while executing; `tar –extract –no-same-owner –file /Users/wangchuangyan/Library/C

Mac run brew install npm error:
Error: Failure while executing; tar --extract --no-same-owner --file /Users/wangchuangyan/Library/Caches/Homebrew/downloads/01840f175b09e7eb3d4ca7f11492bb1bee74fa7569a41a884c7ffb3418e11a02--libuv-1.41.0.catalina.bottle.tar.gz --directory /private/tmp/d20210708-6134-w2f3oo exited with

1. Here’s the output:
tar: Error opening archive: Failed to open ‘/Users/wangchuangyan/Library/Caches/Homebrew/downloads/01840f175b09e7eb3d4ca7f11492bb1bee74fa7569a41a884c7ffb3418e11a02–libuv-1.41.0.catalina.bottle.tar.gz’
It means that the libuv file cannot be opened
Solution: manually install brew install libuv

How to Solve Cocoapods Installation Failure

The scene appears

Recently, I replaced a 512 large hard disk and re installed MacOS 10.15. When installing cocoapods, the following error occurred

Building native extensions. This could take a while...
ERROR:  Error installing cocoapods:
    ERROR: Failed to build gem native extension.

    current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.0/ext/ffi_c
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210324-1667-1wwdce5.rb extconf.rb
checking for ffi.h... no
checking for ffi.h in /usr/local/include,/usr/include/ffi,/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ffi,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/ffi... yes
checking for ffi_prep_closure_loc() in -lffi... yes
checking for ffi_prep_cif_var()... yes
checking for ffi_raw_call()... yes
checking for ffi_prep_raw_closure()... yes
creating extconf.h
creating Makefile

current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.0/ext/ffi_c
make "DESTDIR=" clean

current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.0/ext/ffi_c
make "DESTDIR="
make: *** No rule to make target `"/Volumes/macOS', needed by `AbstractMemory.o'.  Stop.

make failed, exit code 2

Gem files will remain installed in /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.0 for inspection.
Results logged to /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-20/2.6.0/ffi-1.15.0/gem_make.out

Solution:

    1. it may be the problem of system version, which is not compatible with the latest version, so install the old version directly. I encountered the problem is 2021.07.06, the latest version is 1.10.1, find a 1.9.32020.05 release, should be compatible with 10.15
# Specify version to install
sudo gem install -n /usr/local/bin cocoapods -v 1.9.3
      1. use brew to install
brew install cocoapods

MOTR compiling error: cannot call member function ‘void std::basic_string<_CharT, _Traits, _Alloc>::_R

Key error information

/usr/local/include/c++/8.2.0/bits/basic_string.tcc:1067:1: error: cannot call member function 'void std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_set_sharable() [with _CharT = char32_t; _Traits = std::
char_traits<char32_t>; _Alloc = std::allocator<char32_t>]' without object
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1423, in _run_ninja_build
    check=True)
  File "/home/miniconda3/envs/motr/lib/python3.7/subprocess.py", line 512, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

Solution:

/usr/local/include/c++/8.2.0/bits/basic_string.tcc Line 1067

__p->_M_set_sharable();

Change to:

(*__p)._M_set_sharable();

Attachment: the overall error report is as follows

which: no hipcc in (/home/miniconda3/envs/motr/bin:/home/miniconda3/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/bin:/usr/bin:/home/bin:/usr/local/sbin:/usr/sbin)
running build
running build_py
creating build/lib.linux-x86_64-3.7
creating build/lib.linux-x86_64-3.7/functions
copying functions/__init__.py -> build/lib.linux-x86_64-3.7/functions
copying functions/ms_deform_attn_func.py -> build/lib.linux-x86_64-3.7/functions
creating build/lib.linux-x86_64-3.7/modules
copying modules/__init__.py -> build/lib.linux-x86_64-3.7/modules
copying modules/ms_deform_attn.py -> build/lib.linux-x86_64-3.7/modules
running build_ext
building 'MultiScaleDeformableAttention' extension
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/nfs
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/nfs/volume-95-4
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/nfs/volume-95-4/liushuai
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cpu
creating /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cuda
/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py:220: UserWarning:

                               !! WARNING !!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Your compiler (c++) is not compatible with the compiler Pytorch was
built with for this platform, which is g++ on linux. Please
use g++ to to compile your extension. Alternatively, you may
compile PyTorch from source using c++, and then you can also use
c++ to compile your extension.

See https://github.com/pytorch/pytorch/blob/master/CONTRIBUTING.md for help
with compiling PyTorch from source.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

                              !! WARNING !!

  platform=sys.platform))
Emitting ninja build file /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/3] c++ -MMD -MF /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cpu/ms_deform_attn_cpu.o.d -pthread -B /home/miniconda3/envs/motr/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DWITH_CUDA -I/github/MOTR/models/ops/src -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/TH -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/THC -I/usr/local/cuda/include -I/home/miniconda3/envs/motr/include/python3.7m -c -c /github/MOTR/models/ops/src/cpu/ms_deform_attn_cpu.cpp -o /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cpu/ms_deform_attn_cpu.o -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=MultiScaleDeformableAttention -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++14
cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
[2/3] c++ -MMD -MF /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/vision.o.d -pthread -B /home/miniconda3/envs/motr/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DWITH_CUDA -I/github/MOTR/models/ops/src -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/TH -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/THC -I/usr/local/cuda/include -I/home/miniconda3/envs/motr/include/python3.7m -c -c /github/MOTR/models/ops/src/vision.cpp -o /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/vision.o -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=MultiScaleDeformableAttention -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++14
cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
In file included from /github/MOTR/models/ops/src/vision.cpp:11:
/github/MOTR/models/ops/src/ms_deform_attn.h: In function 'at::Tensor ms_deform_attn_forward(const at::Tensor&, const at::Tensor&, const at::Tensor&, const at::Tensor&, const at::Tensor&, int)':
/github/MOTR/models/ops/src/ms_deform_attn.h:29:20: warning: 'at::DeprecatedTypeProperties& at::Tensor::type() const' is deprecated: Tensor.type() is deprecated. Instead use Tensor.options(), which in many ca
ses (e.g. in a constructor) is a drop-in replacement. If you were using data from type(), that is now available from Tensor itself, so instead of tensor.type().scalar_type(), use tensor.scalar_type() instead
and instead of tensor.type().backend() use tensor.device(). [-Wdeprecated-declarations]
     if (value.type().is_cuda())
                    ^
In file included from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/Tensor.h:11,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/Context.h:4,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/ATen.h:5,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/types.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader_options.h:4,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/base.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/stateful.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/all.h:4,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/extension.h:4,
                 from /github/MOTR/models/ops/src/cpu/ms_deform_attn_cpu.h:12,
                 from /github/MOTR/models/ops/src/ms_deform_attn.h:13,
                 from /github/MOTR/models/ops/src/vision.cpp:11:
/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/core/TensorBody.h:262:30: note: declared here
   DeprecatedTypeProperties & type() const {
                              ^~~~
In file included from /github/MOTR/models/ops/src/vision.cpp:11:
/github/MOTR/models/ops/src/ms_deform_attn.h: In function 'std::vector<at::Tensor> ms_deform_attn_backward(const at::Tensor&, const at::Tensor&, const at::Tensor&, const at::Tensor&, const at::Tensor&, const
at::Tensor&, int)':
/github/MOTR/models/ops/src/ms_deform_attn.h:51:20: warning: 'at::DeprecatedTypeProperties& at::Tensor::type() const' is deprecated: Tensor.type() is deprecated. Instead use Tensor.options(), which in many ca
ses (e.g. in a constructor) is a drop-in replacement. If you were using data from type(), that is now available from Tensor itself, so instead of tensor.type().scalar_type(), use tensor.scalar_type() instead
and instead of tensor.type().backend() use tensor.device(). [-Wdeprecated-declarations]
     if (value.type().is_cuda())
                    ^
In file included from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/Tensor.h:11,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/Context.h:4,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/ATen.h:5,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/types.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader_options.h:4,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/base.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/stateful.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data.h:3,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/all.h:4,
                 from /home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/torch/extension.h:4,
                 from /github/MOTR/models/ops/src/cpu/ms_deform_attn_cpu.h:12,
                 from /github/MOTR/models/ops/src/ms_deform_attn.h:13,
                 from /github/MOTR/models/ops/src/vision.cpp:11:
/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/ATen/core/TensorBody.h:262:30: note: declared here
   DeprecatedTypeProperties & type() const {
                              ^~~~
[3/3] /usr/local/cuda/bin/nvcc -DWITH_CUDA -I/github/MOTR/models/ops/src -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/i
nclude/torch/csrc/api/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/TH -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/THC -I/usr/local/cuda/include -I/
home/miniconda3/envs/motr/include/python3.7m -c -c /github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu -o /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cuda/ms_deform_attn
_cuda.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' -DCUDA_HAS_FP16=1 -D__CUDA_NO_HALF_OPERATORS__ -
D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=MultiScaleDeformableAttention -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_61,code=sm_61
-std=c++14
FAILED: /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.o
/usr/local/cuda/bin/nvcc -DWITH_CUDA -I/github/MOTR/models/ops/src -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include
/torch/csrc/api/include -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/TH -I/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/include/THC -I/usr/local/cuda/include -I/home/m
iniconda3/envs/motr/include/python3.7m -c -c /github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu -o /github/MOTR/models/ops/build/temp.linux-x86_64-3.7/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.
o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' -DCUDA_HAS_FP16=1 -D__CUDA_NO_HALF_OPERATORS__ -D__CUD
A_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=MultiScaleDeformableAttention -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_61,code=sm_61 -std=c
++14
/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(261): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_im2col_cuda(cudaStream_t, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int, int, int, int, i
nt, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(64): here

/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(762): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_col2im_cuda(cudaStream_t, const scalar_t *, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int
, int, int, int, int, scalar_t *, scalar_t *, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(134): here

/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(872): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_col2im_cuda(cudaStream_t, const scalar_t *, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int
, int, int, int, int, scalar_t *, scalar_t *, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(134): here

/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(331): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_col2im_cuda(cudaStream_t, const scalar_t *, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int
, int, int, int, int, scalar_t *, scalar_t *, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(134): here

/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(436): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_col2im_cuda(cudaStream_t, const scalar_t *, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int
, int, int, int, int, scalar_t *, scalar_t *, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(134): here

/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(544): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_col2im_cuda(cudaStream_t, const scalar_t *, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int
, int, int, int, int, scalar_t *, scalar_t *, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(134): here

/github/MOTR/models/ops/src/cuda/ms_deform_im2col_cuda.cuh(649): warning: variable "q_col" was declared but never referenced
          detected during instantiation of "void ms_deformable_col2im_cuda(cudaStream_t, const scalar_t *, const scalar_t *, const int64_t *, const int64_t *, const scalar_t *, const scalar_t *, int, int, int
, int, int, int, int, scalar_t *, scalar_t *, scalar_t *) [with scalar_t=double]"
/github/MOTR/models/ops/src/cuda/ms_deform_attn_cuda.cu(134): here

/usr/local/include/c++/8.2.0/bits/basic_string.tcc: In instantiation of 'static std::basic_string<_CharT, _Traits, _Alloc>::_Rep* std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_S_create(std::basic_string<
_CharT, _Traits, _Alloc>::size_type, std::basic_string<_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>; std
::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int]':
/usr/local/include/c++/8.2.0/bits/basic_string.tcc:578:28:   required from 'static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct(_InIterator, _InIterator, const _Alloc&, std::forward_iterat
or_tag) [with _FwdIterator = const char16_t*; _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]'
/usr/local/include/c++/8.2.0/bits/basic_string.h:5043:20:   required from 'static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct_aux(_InIterator, _InIterator, const _Alloc&, std::__false_typ
e) [with _InIterator = const char16_t*; _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]'
/usr/local/include/c++/8.2.0/bits/basic_string.h:5064:24:   required from 'static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct(_InIterator, _InIterator, const _Alloc&) [with _InIterator =
const char16_t*; _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]'
/usr/local/include/c++/8.2.0/bits/basic_string.tcc:656:134:   required from 'std::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, std::basic_string<_CharT, _Traits, _Alloc>::size_type, cons
t _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>; std::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int]'
/usr/local/include/c++/8.2.0/bits/basic_string.h:6716:95:   required from here
/usr/local/include/c++/8.2.0/bits/basic_string.tcc:1067:1: error: cannot call member function 'void std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_set_sharable() [with _CharT = char16_t; _Traits = std::
char_traits<char16_t>; _Alloc = std::allocator<char16_t>]' without object
       __p->_M_set_sharable();
 ^     ~~~~~~~~~
/usr/local/include/c++/8.2.0/bits/basic_string.tcc: In instantiation of 'static std::basic_string<_CharT, _Traits, _Alloc>::_Rep* std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_S_create(std::basic_string<
_CharT, _Traits, _Alloc>::size_type, std::basic_string<_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>; std
::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int]':
/usr/local/include/c++/8.2.0/bits/basic_string.tcc:578:28:   required from 'static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct(_InIterator, _InIterator, const _Alloc&, std::forward_iterat
or_tag) [with _FwdIterator = const char32_t*; _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]'
/usr/local/include/c++/8.2.0/bits/basic_string.h:5043:20:   required from 'static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct_aux(_InIterator, _InIterator, const _Alloc&, std::__false_typ
e) [with _InIterator = const char32_t*; _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]'
/usr/local/include/c++/8.2.0/bits/basic_string.h:5064:24:   required from 'static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct(_InIterator, _InIterator, const _Alloc&) [with _InIterator =
const char32_t*; _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]'
/usr/local/include/c++/8.2.0/bits/basic_string.tcc:656:134:   required from 'std::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, std::basic_string<_CharT, _Traits, _Alloc>::size_type, cons
t _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>; std::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int]'
/usr/local/include/c++/8.2.0/bits/basic_string.h:6721:95:   required from here
/usr/local/include/c++/8.2.0/bits/basic_string.tcc:1067:1: error: cannot call member function 'void std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_set_sharable() [with _CharT = char32_t; _Traits = std::
char_traits<char32_t>; _Alloc = std::allocator<char32_t>]' without object
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1423, in _run_ninja_build
    check=True)
  File "/home/miniconda3/envs/motr/lib/python3.7/subprocess.py", line 512, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "setup.py", line 70, in <module>
    cmdclass={"build_ext": torch.utils.cpp_extension.BuildExtension},
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/setuptools/__init__.py", line 153, in setup
    return distutils.core.setup(**attrs)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 79, in run
    _build_ext.run(self)
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
    _build_ext.build_ext.run(self)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/command/build_ext.py", line 340, in run
    self.build_extensions()
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 603, in build_extensions
    build_ext.build_extensions(self)
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
    _build_ext.build_ext.build_extensions(self)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/command/build_ext.py", line 449, in build_extensions
    self._build_extensions_serial()
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/command/build_ext.py", line 474, in _build_extensions_serial
    self.build_extension(ext)
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 196, in build_extension
    _build_ext.build_extension(self, ext)
  File "/home/miniconda3/envs/motr/lib/python3.7/distutils/command/build_ext.py", line 534, in build_extension
    depends=ext.depends)
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 437, in unix_wrap_ninja_compile
    with_cuda=with_cuda)
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1163, in _write_ninja_file_and_compile_objects
    error_prefix='Error compiling objects for extension')
  File "/home/miniconda3/envs/motr/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1436, in _run_ninja_build
    raise RuntimeError(message)
RuntimeError: Error compiling objects for extension

[Solved] error: OpenCV(4.5.2) :-1: error: (-5:Bad argument) in function ‘copyMakeBorder‘

Question:

##Boundary fill
import cv2
top_size,bottom_size,left_size,right_size=(50,50,50,50)
replicate=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_REPLICATE)
reflect=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_REFLECT)
reflect101=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_REFLECT101)
wrap=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_WRAP)
constant=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_CONSTANT,value=0) 
Outcome:
error Traceback (most recent call last)
<ipython-input-39-820a457b4770> in <module>
      2 import cv2
      3 top_size,bottom_size,left_size,right_size=(50,50,50,50)
----> 4 replicate=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_REPLICATE)
      5 reflect=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_REFLECT)
      6 reflect101=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,boderType=cv2.BORDER_REFLECT101)

error: OpenCV(4.5.2) :-1: error: (-5:Bad argument) in function 'copyMakeBorder'
> Overload resolution failed:
>  - copyMakeBorder() missing required argument 'borderType' (pos 6)
>  - copyMakeBorder() missing required argument 'borderType' (pos 6)

analysis:

error: OpenCV(4.5.2) :-1: error: (-5:Bad argument) in function 'copyMakeBorder'
> Overload resolution failed:
>  - copyMakeBorder() missing required argument 'borderType' (pos 6)
>  - copyMakeBorder() missing required argument 'borderType' (pos 6)

“Bordertype” spelling error!!!!

Correct code:

##Boundary fill
import cv2
top_size,bottom_size,left_size,right_size=(50,50,50,50)
replicate=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REPLICATE)
reflect=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT)
reflect101=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT101)
wrap=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_WRAP)
constant=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_CONSTANT,value=0) 


import matplotlib.pyplot as plt
plt.subplot(231),plt.imshow(img,'gray'),plt.title('ORIGINAL')
plt.subplot(232),plt.imshow(replicate,'gray'),plt.title('REPLICATE')
plt.subplot(233),plt.imshow(reflect,'gray'),plt.title('REFLECT')
plt.subplot(234),plt.imshow(reflect101,'gray'),plt.title('REFLECT101')
plt.subplot(235),plt.imshow(wrap,'gray'),plt.title('WRAP')
plt.subplot(236),plt.imshow(constant,'gray'),plt.title('CONSTANTL')

plt.show()

Output results:

    cv2.BORDER_ Replicate copy method, copy the edge pixel CV2. Border_ Reflect reflection method, the interested image pixels on both sides of the entry CV2. Border_ Reflect101 reflection method, with the most edge pixel as the axis, symmetrical CV2. Border_Wrap method cv2.border_Constant good method

Vue3 Warning: [Vue warn]: Extraneous non-emits event listeners (changeParentProps) were passed to component

The following warning is reported in component communication (child to parent) in Vue3.
[Vue warn]: Extraneous non-emits event listeners (changeParentProps) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the “emits” option.

Solution: Just declare the custom event name

emits: [‘changeParentProps’]

<template>
  <div>
    Subcomponents
  </div>
  <button @click="changeParentProps"> Changes the parent component's passed props</button>
</template>
<script lang="ts">
import { defineComponent } from '@vue/composition-api'
export default defineComponent({
  emits: ['changeParentProps'],
  props: {
    data: {
      type: String,
      default: ''
    }
  },
  setup (props, { emit }) {
    // console.log(props)
    const changeParentProps = () => {
      emit('changeParentProps', '123')
    }
    return {
      changeParentProps
    }
  }
})
</script>

[Solved] Gradle NullPointerException at com.android.build.gradle.internal.ndk.NdkHandler.getPlatformVersion

Baidu does not have the answer to this question, to Google: reference https://github.com/luncliff/NdkCamera/issues/1 As mentioned in

the path to add NDK, you need to pay attention to a NDK version number. At the beginning, I directly referred to NDK, but I couldn’t do it without the following 21.0.6113669
so make a record in CSDN to facilitate future generations to find out, without going over the wall.

[Solved] Zsh: one of the solutions to parse error near ‘\n’

There are unnecessary branches in the remote warehouse. You want to delete them locally

Input command:

git push origin --delete <feature/yuh_add_authority>

feature/yuh_add_authority --- for the remote repository branch name

Then report an error:

zsh: parse error near `\n'

Solution: do not add <>

git push origin --delete feature/yuh_add_authority

Successfully deleted remote warehouse branch:

Path cannot be used with params in this. $router. Push() method, otherwise params will be invalid

Path in this. $router. Push() method cannot be used with params, otherwise params will be invalid!!

This. $router.push can pass parameters in two ways:

The first one is the first one

Pass parameters -- this.$router.push({path: ' route ', query: {key: value}})

Parameter fetch -- this.$route.query.key

With this approach, the passed parameters are spliced after the route and appear in the address bar.

Second:

Passing parameters -- this.$router.push({name: ' name of route ', params: {key: value}})

Parameters take values -- this.$route.params.key

With this approach, the parameters are not spliced behind the route and are not visible on the address bar...

Dynamic routing also passes params, so in this. $router. Push() method, path cannot be used with params, otherwise params will be invalid. You need name to specify the page.

[access through the name attribute of routing configuration]

[Solved] Anaconda Error: pyqt can’t use QSqlDatabase to connect to MySQL

1. Problem description

Generally speaking, pyqt can connect to MySQL database in the following format:

self.DB = QSqlDatabase.addDatabase('QMYSQL')
self.DB.setDatabaseName("school_club") # Enter the data table you want to access
self.DB.setHostName('localhost')
self.DB.setPort(3306)
self.DB.setUserName('root')
self.DB.setPassword('') # Enter the password for your own database

However, sometimes the connection fails, and debug can’t point out the error clearly. Errors can be found in the following ways.

Method 1: check the driver attached to pyqt

print(QSqlDatabase.drivers())

If ‘qmmysql’ and ‘qmysql3’ are found missing in the driver, it indicates that the error is driver missing. You can use this method to solve the problem. Because under normal conditions, the output should be as follows:

['QSQLITE', 'QMYSQL', 'QMYSQL3', 'QODBC', 'QODBC3', 'QPSQL', 'QPSQL7']

Method 2: print error information

print(self.DB.lastError().text())

This method can also get the specific part of the connection error.

2. How to solve the lack of qmmysql driver?

The author’s pyqt is installed in Anaconda environment, so the folder path to be found by the driver is special.

The general idea is to add two DLL files: qsqlmysql.dll and libmysql.dll in pyqt related folder. At the same time, these two files must be fully matched with the relevant pyqt version.

Step 1: load qsqlmysql.dll

First, open Anaconda prompt, enter the following command line, and adjust the python version to 5.12.1 (only this version comes with qsqlmysql.dll, other versions of this DLL are too difficult to find a matching one)

pip install PyQt5==5.12.1

After this step, qsqlmysql.dll has been successfully installed in the relevant folder.

Step 2: load libmysql.dll

This is relatively easy. First, find the libmysql.dll (this is the default path for MySQL installation, and the user-defined path will be found separately) in the path of C:// program files/MySQL/MySQL server 8.0/bin, and copy it.

Take my computer as an example, paste the file to the following path:

D:\Anaconda\Anaconda\Lib\site-packages\PyQt5\Qt\bin

You can choose the appropriate path according to the relative path of the above path according to the installation location of anaconda.

Restart the programming tool and print again (QSqlDatabase. Drivers()). It is found that ‘qmmysql’ and ‘qmysql3’ have successfully appeared.

[Solved] Scala signature package has wrong version expected: 5.0 found: 5.2 in package.class

XXX.jar broken
scala signature package has wrong version expected: 5.0 found: 5.2 in package.class

Solution:
add the dependency of the corresponding SDK in pom.xml, and the version must correspond to
if it is Scala, you must find the library of the corresponding version of scala SDK
if it says that Scala 2.12 and 2.13 are compatible, it’s better to choose only 2.12