facebookresearch / detectron2

Detectron2 is a platform for object detection, segmentation and other visual recognition tasks.
https://detectron2.readthedocs.io/en/latest/
Apache License 2.0
30.01k stars 7.41k forks source link

Install error with "nms_rotated_cpu.cpp:33:42: error: expected primary-expression before ‘)’ token" #16

Closed hzzh11856 closed 4 years ago

hzzh11856 commented 4 years ago

My system configuration is listed below:

OS: Ubuntu16.04 gcc: 5.4.0 pytorch: 1.1.0 python: 3.5.2 nvcc: V9.2.148

while I compile detectron2 use below command:

sudo python3 setup.py build develop

Error occured, the Log list below:

running build running build_py creating build creating build/lib.linux-x86_64-3.5 creating build/lib.linux-x86_64-3.5/detectron2 copying detectron2/init.py -> build/lib.linux-x86_64-3.5/detectron2 creating build/lib.linux-x86_64-3.5/detectron2/config copying detectron2/config/compat.py -> build/lib.linux-x86_64-3.5/detectron2/config copying detectron2/config/config.py -> build/lib.linux-x86_64-3.5/detectron2/config copying detectron2/config/init.py -> build/lib.linux-x86_64-3.5/detectron2/config copying detectron2/config/defaults.py -> build/lib.linux-x86_64-3.5/detectron2/config creating build/lib.linux-x86_64-3.5/detectron2/engine copying detectron2/engine/launch.py -> build/lib.linux-x86_64-3.5/detectron2/engine copying detectron2/engine/init.py -> build/lib.linux-x86_64-3.5/detectron2/engine copying detectron2/engine/train_loop.py -> build/lib.linux-x86_64-3.5/detectron2/engine copying detectron2/engine/defaults.py -> build/lib.linux-x86_64-3.5/detectron2/engine copying detectron2/engine/hooks.py -> build/lib.linux-x86_64-3.5/detectron2/engine creating build/lib.linux-x86_64-3.5/detectron2/checkpoint copying detectron2/checkpoint/model_zoo.py -> build/lib.linux-x86_64-3.5/detectron2/checkpoint copying detectron2/checkpoint/init.py -> build/lib.linux-x86_64-3.5/detectron2/checkpoint copying detectron2/checkpoint/c2_model_loading.py -> build/lib.linux-x86_64-3.5/detectron2/checkpoint copying detectron2/checkpoint/detection_checkpoint.py -> build/lib.linux-x86_64-3.5/detectron2/checkpoint creating build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/roi_align_rotated.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/shape_spec.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/nms.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/deform_conv.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/init.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/roi_align.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/mask_ops.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/rotated_boxes.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/wrappers.py -> build/lib.linux-x86_64-3.5/detectron2/layers copying detectron2/layers/batch_norm.py -> build/lib.linux-x86_64-3.5/detectron2/layers creating build/lib.linux-x86_64-3.5/detectron2/data copying detectron2/data/dataset_mapper.py -> build/lib.linux-x86_64-3.5/detectron2/data copying detectron2/data/init.py -> build/lib.linux-x86_64-3.5/detectron2/data copying detectron2/data/detection_utils.py -> build/lib.linux-x86_64-3.5/detectron2/data copying detectron2/data/catalog.py -> build/lib.linux-x86_64-3.5/detectron2/data copying detectron2/data/common.py -> build/lib.linux-x86_64-3.5/detectron2/data copying detectron2/data/build.py -> build/lib.linux-x86_64-3.5/detectron2/data creating build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/matcher.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/test_time_augmentation.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/postprocessing.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/init.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/sampling.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/anchor_generator.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/box_regression.py -> build/lib.linux-x86_64-3.5/detectron2/modeling copying detectron2/modeling/poolers.py -> build/lib.linux-x86_64-3.5/detectron2/modeling creating build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/serialize.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/events.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/logger.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/video_visualizer.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/comm.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/registry.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/collect_env.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/visualizer.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/init.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/env.py -> build/lib.linux-x86_64-3.5/detectron2/utils copying detectron2/utils/colormap.py -> build/lib.linux-x86_64-3.5/detectron2/utils creating build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/panoptic_evaluation.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/testing.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/sem_seg_evaluation.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/pascal_voc_evaluation.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/init.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/coco_evaluation.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/evaluator.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/cityscapes_evaluation.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation copying detectron2/evaluation/lvis_evaluation.py -> build/lib.linux-x86_64-3.5/detectron2/evaluation creating build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/instances.py -> build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/keypoints.py -> build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/image_list.py -> build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/init.py -> build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/masks.py -> build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/boxes.py -> build/lib.linux-x86_64-3.5/detectron2/structures copying detectron2/structures/rotated_boxes.py -> build/lib.linux-x86_64-3.5/detectron2/structures creating build/lib.linux-x86_64-3.5/detectron2/solver copying detectron2/solver/lr_scheduler.py -> build/lib.linux-x86_64-3.5/detectron2/solver copying detectron2/solver/init.py -> build/lib.linux-x86_64-3.5/detectron2/solver copying detectron2/solver/build.py -> build/lib.linux-x86_64-3.5/detectron2/solver creating build/lib.linux-x86_64-3.5/detectron2/data/transforms copying detectron2/data/transforms/init.py -> build/lib.linux-x86_64-3.5/detectron2/data/transforms copying detectron2/data/transforms/transform.py -> build/lib.linux-x86_64-3.5/detectron2/data/transforms copying detectron2/data/transforms/transform_gen.py -> build/lib.linux-x86_64-3.5/detectron2/data/transforms creating build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/builtin.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/cityscapes.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/builtin_meta.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/lvis_v0_5_categories.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/coco.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/init.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/pascal_voc.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/lvis.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets copying detectron2/data/datasets/register_coco.py -> build/lib.linux-x86_64-3.5/detectron2/data/datasets creating build/lib.linux-x86_64-3.5/detectron2/data/samplers copying detectron2/data/samplers/distributed_sampler.py -> build/lib.linux-x86_64-3.5/detectron2/data/samplers copying detectron2/data/samplers/grouped_batch_sampler.py -> build/lib.linux-x86_64-3.5/detectron2/data/samplers copying detectron2/data/samplers/init.py -> build/lib.linux-x86_64-3.5/detectron2/data/samplers creating build/lib.linux-x86_64-3.5/detectron2/modeling/backbone copying detectron2/modeling/backbone/backbone.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/backbone copying detectron2/modeling/backbone/init.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/backbone copying detectron2/modeling/backbone/resnet.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/backbone copying detectron2/modeling/backbone/fpn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/backbone copying detectron2/modeling/backbone/build.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/backbone creating build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch copying detectron2/modeling/meta_arch/retinanet.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch copying detectron2/modeling/meta_arch/semantic_seg.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch copying detectron2/modeling/meta_arch/init.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch copying detectron2/modeling/meta_arch/panoptic_fpn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch copying detectron2/modeling/meta_arch/rcnn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch copying detectron2/modeling/meta_arch/build.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/meta_arch creating build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/mask_head.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/keypoint_head.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/cascade_rcnn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/init.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/box_head.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/roi_heads.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads copying detectron2/modeling/roi_heads/fast_rcnn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/roi_heads creating build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/rrpn_outputs.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/proposal_utils.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/rpn_outputs.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/init.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/rrpn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/rpn.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator copying detectron2/modeling/proposal_generator/build.py -> build/lib.linux-x86_64-3.5/detectron2/modeling/proposal_generator running build_ext building 'detectron2._C' extension creating build/temp.linux-x86_64-3.5 creating build/temp.linux-x86_64-3.5/home creating build/temp.linux-x86_64-3.5/home/zonesion creating build/temp.linux-x86_64-3.5/home/zonesion/mnt creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2 creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2 creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/box_iou_rotated creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/ROIAlignRotated creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/ROIAlign creating build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/deformable x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DWITH_CUDA -I/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc -I/usr/local/lib/python3.5/dist-packages/torch/include -I/usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.5/dist-packages/torch/include/TH -I/usr/local/lib/python3.5/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.5m -c /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/vision.cpp -o build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/vision.o -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_C -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++11 cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++ x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DWITH_CUDA -I/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc -I/usr/local/lib/python3.5/dist-packages/torch/include -I/usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.5/dist-packages/torch/include/TH -I/usr/local/lib/python3.5/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.5m -c /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp -o build/temp.linux-x86_64-3.5/home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.o -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_C -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++11 cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp: In function ‘at::Tensor detectron2::nms_rotated_cpu_kernel(const at::Tensor&, const at::Tensor&, float)’: /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:31:50: error: expected primary-expression before ‘>’ token auto suppressed = suppressed_t.data_ptr(); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:31:52: error: expected primary-expression before ‘)’ token auto suppressed = suppressed_t.data_ptr(); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:32:38: error: expected primary-expression before ‘>’ token auto keep = keep_t.data_ptr(); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:32:40: error: expected primary-expression before ‘)’ token auto keep = keep_t.data_ptr(); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:33:40: error: expected primary-expression before ‘>’ token auto order = order_t.data_ptr(); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:33:42: error: expected primary-expression before ‘)’ token auto order = order_t.data_ptr(); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:52:36: error: expected primary-expression before ‘>’ token dets[i].data_ptr(), dets[j].data_ptr()); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:52:38: error: expected primary-expression before ‘)’ token dets[i].data_ptr(), dets[j].data_ptr()); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:52:66: error: expected primary-expression before ‘>’ token dets[i].data_ptr(), dets[j].data_ptr()); ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:52:68: error: expected primary-expression before ‘)’ token dets[i].data_ptr(), dets[j].data_ptr()); ^ In file included from /usr/local/lib/python3.5/dist-packages/torch/include/ATen/ATen.h:9:0, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/types.h:3, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/data/dataloader_options.h:4, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/base.h:3, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/stateful.h:3, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/data/dataloader.h:3, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/data.h:3, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/csrc/api/include/torch/all.h:4, from /usr/local/lib/python3.5/dist-packages/torch/include/torch/extension.h:4, from /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated.h:3, from /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:3: /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp: In lambda function: /usr/local/lib/python3.5/dist-packages/torch/include/ATen/Dispatch.h:71:52: warning: ‘c10::ScalarType detail::scalar_type(const at::DeprecatedTypeProperties&)’ is deprecated [-Wdeprecated-declarations] at::ScalarType _st = ::detail::scalar_type(TYPE); \ ^ /home/zonesion/mnt/dell/Git/detectron2/detectron2/layers/csrc/nms_rotated/nms_rotated_cpu.cpp:67:3: note: in expansion of macro ‘AT_DISPATCH_FLOATING_TYPES’ AT_DISPATCH_FLOATING_TYPES(dets.type(), "nms_rotated", [&] { ^ /usr/local/lib/python3.5/dist-packages/torch/include/ATen/Dispatch.h:47:23: note: declared here inline at::ScalarType scalar_type(const at::DeprecatedTypeProperties &t) { ^ error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

I'm really not familiar with C++, help someone can give me some tutorial, really thanks.

ppwwyyxx commented 4 years ago

As INSTALL.md said, you need pytorch 1.3 and python >= 3.6

hzzh11856 commented 4 years ago

@ppwwyyxx Thank for your quickly answer, I will close this question.