dji-sdk / Payload-SDK

DJI Payload SDK Official Repository
https://github.com/dji-sdk/Payload-SDK
Other
247 stars 111 forks source link

Too many build warnings #122

Open whyscience opened 11 months ago

whyscience commented 11 months ago

one bug:

case E_DJI_TEST_CAMERA_MANAGER_SAMPLE_SELECT_RESET_CAMERA_SETTINGS: {
            returnCode = DjiCameraManager_ResetCameraSetting(mountPosition);
            if (returnCode != DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS) {
                USER_LOG_ERROR("reset camera at position %d failed", mountPosition);
                goto exitCameraModule;
            }

            USER_LOG_INFO("Reset camera settings success!");

            break;
        }

but in the definition:

/**
 * @brief Reset camera settings.
 * @param position: camera mounted position
 * @return Execution result.
 */
T_DjiReturnCode DjiCameraManager_ResetCameraSettings(E_DjiMountPosition position);

also there are tons of build warnings

====================[ Build | dji_sdk_demo_linux_cxx | Debug ]==================
/home/eric/.local/share/JetBrains/Toolbox/apps/clion/bin/cmake/linux/x64/bin/cmake --build /home/eric/ct/Payload-SDK-github/cmake-build-debug --target dji_sdk_demo_linux_cxx -j 10
[5/58] Building CXX object samples/sample_c++/platform/linux/manifold2/CMakeFiles/dji_sdk_demo_linux_cxx.dir/__/__/__/module_sample/liveview/dji_camera_stream_decoder.cpp.o
../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp: In member function ‘void DJICameraStreamDecoder::decodeBuffer(const uint8_t*, int)’:
../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:210:74: warning: ‘int avcodec_decode_video2(AVCodecContext*, AVFrame*, int*, const AVPacket*)’ is deprecated [-Wdeprecated-declarations]
             avcodec_decode_video2(pCodecCtx, pFrameYUV, &gotPicture, &pkt);
                                                                          ^
In file included from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.hpp:33:0,
                 from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:26:
/usr/include/x86_64-linux-gnu/libavcodec/avcodec.h:4993:5: note: declared here
 int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
     ^~~~~~~~~~~~~~~~~~~~~
../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:227:72: warning: ‘int avpicture_get_size(AVPixelFormat, int, int)’ is deprecated [-Wdeprecated-declarations]
                     bufSize = avpicture_get_size(AV_PIX_FMT_RGB24, w, h);
                                                                        ^
In file included from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.hpp:33:0,
                 from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:26:
/usr/include/x86_64-linux-gnu/libavcodec/avcodec.h:5653:5: note: declared here
 int avpicture_get_size(enum AVPixelFormat pix_fmt, int width, int height);
     ^~~~~~~~~~~~~~~~~~
../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:229:91: warning: ‘int avpicture_fill(AVPicture*, const uint8_t*, AVPixelFormat, int, int)’ is deprecated [-Wdeprecated-declarations]
                     avpicture_fill((AVPicture *) pFrameRGB, rgbBuf, AV_PIX_FMT_RGB24, w, h);
                                                                                           ^
In file included from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.hpp:33:0,
                 from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:26:
/usr/include/x86_64-linux-gnu/libavcodec/avcodec.h:5638:5: note: declared here
 int avpicture_fill(AVPicture *picture, const uint8_t *ptr,
     ^~~~~~~~~~~~~~
../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:246:24: warning: ‘void av_free_packet(AVPacket*)’ is deprecated [-Wdeprecated-declarations]
     av_free_packet(&pkt);
                        ^
In file included from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.hpp:33:0,
                 from ../samples/sample_c++/module_sample/liveview/dji_camera_stream_decoder.cpp:26:
/usr/include/x86_64-linux-gnu/libavcodec/avcodec.h:4650:6: note: declared here
 void av_free_packet(AVPacket *pkt);
      ^~~~~~~~~~~~~~
[9/58] Building C object samples/sample_c++/platform/linux/manifold2/CMakeFiles/dji_sdk_demo_linux_cxx.dir/__/__/__/__/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_core.c.o
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_core.c:49:9: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
         DjiMediaFile_GetDataOrigin_JPG,
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_core.c:49:9: note: (near initialization for ‘s_mediaFileOpt[0].getDataOrgFunc’)
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_core.c:65:9: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
         DjiMediaFile_GetDataOrigin_MP4,
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_core.c:65:9: note: (near initialization for ‘s_mediaFileOpt[1].getDataOrgFunc’)
[10/58] Building C object samples/sample_c++/platform/linux/manifold2/CMakeFiles/dji_sdk_demo_linux_cxx.dir/__/__/__/__/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_jpg.c.o
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_jpg.c: In function ‘DjiMediaFile_GetDataOrigin_JPG’:
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_jpg.c:87:85: warning: passing argument 5 of ‘UtilFile_GetFileDataByPath’ from incompatible pointer type [-Wincompatible-pointer-types]
     return UtilFile_GetFileDataByPath(mediaFileHandle->filePath, offset, len, data, realLen);
                                                                                     ^~~~~~~
In file included from ../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_jpg.c:37:0:
../samples/sample_c++/platform/linux/manifold2/../../../../sample_c/module_sample/utils/util_file.h:55:17: note: expected ‘uint32_t * {aka unsigned int *}’ but argument is of type ‘uint16_t * {aka short unsigned int *}’
 T_DjiReturnCode UtilFile_GetFileDataByPath(const char *filePath, uint32_t offset, uint32_t len,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
[11/58] Building C object samples/sample_c++/platform/linux/manifold2/CMakeFiles/dji_sdk_demo_linux_cxx.dir/__/__/__/__/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_mp4.c.o
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_mp4.c: In function ‘DjiMediaFile_GetDataOrigin_MP4’:
../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_mp4.c:120:85: warning: passing argument 5 of ‘UtilFile_GetFileDataByPath’ from incompatible pointer type [-Wincompatible-pointer-types]
     return UtilFile_GetFileDataByPath(mediaFileHandle->filePath, offset, len, data, realLen);
                                                                                     ^~~~~~~
In file included from ../samples/sample_c/module_sample/camera_emu/dji_media_file_manage/dji_media_file_mp4.c:36:0:
../samples/sample_c++/platform/linux/manifold2/../../../../sample_c/module_sample/utils/util_file.h:55:17: note: expected ‘uint32_t * {aka unsigned int *}’ but argument is of type ‘uint16_t * {aka short unsigned int *}’
 T_DjiReturnCode UtilFile_GetFileDataByPath(const char *filePath, uint32_t offset, uint32_t len,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
[21/58] Building C object samples/sample_c++/platform/linux/manifold2/CMakeFiles/dji_sdk_demo_linux_cxx.dir/__/__/__/__/sample_c/module_sample/camera_manager/test_camera_manager.c.o
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c: In function ‘DjiTest_CameraManagerRunSample’:
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:1582:26: warning: implicit declaration of function ‘DjiCameraManager_ResetCameraSetting’; did you mean ‘DjiCameraManager_ResetCameraSettings’? [-Wimplicit-function-declaration]
             returnCode = DjiCameraManager_ResetCameraSetting(mountPosition);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                          DjiCameraManager_ResetCameraSettings
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:1687:21: warning: format ‘%d’ expects argument of type ‘int *’, but argument 2 has type ‘uint16_t * {aka short unsigned int *}’ [-Wformat=]
             scanf("%d", &focusRingValue);
                    ~^   ~~~~~~~~~~~~~~~
                    %hd
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:1968:75: warning: passing argument 2 of ‘DjiCameraManager_GetMeteringPoint’ from incompatible pointer type [-Wincompatible-pointer-types]
             returnCode = DjiCameraManager_GetMeteringPoint(mountPosition, &x, &y);
                                                                           ^
In file included from ../samples/sample_c/module_sample/camera_manager/test_camera_manager.h:32:0,
                 from ../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:28:
../samples/sample_c++/platform/linux/manifold2/../../../../../psdk_lib/include/dji_camera_manager.h:1663:17: note: expected ‘uint8_t * {aka unsigned char *}’ but argument is of type ‘int32_t * {aka int *}’
 T_DjiReturnCode DjiCameraManager_GetMeteringPoint(E_DjiMountPosition position,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:1968:79: warning: passing argument 3 of ‘DjiCameraManager_GetMeteringPoint’ from incompatible pointer type [-Wincompatible-pointer-types]
             returnCode = DjiCameraManager_GetMeteringPoint(mountPosition, &x, &y);
                                                                               ^
In file included from ../samples/sample_c/module_sample/camera_manager/test_camera_manager.h:32:0,
                 from ../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:28:
../samples/sample_c++/platform/linux/manifold2/../../../../../psdk_lib/include/dji_camera_manager.h:1663:17: note: expected ‘uint8_t * {aka unsigned char *}’ but argument is of type ‘int32_t * {aka int *}’
 T_DjiReturnCode DjiCameraManager_GetMeteringPoint(E_DjiMountPosition position,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:1991:21: warning: format ‘%d’ expects argument of type ‘int *’, but argument 2 has type ‘E_DjiCameraManagerFfcMode * {aka enum <anonymous> *}’ [-Wformat=]
             scanf("%d", &ffcMode);
                    ~^   ~~~~~~~~
../samples/sample_c/module_sample/camera_manager/test_camera_manager.c:2035:21: warning: format ‘%d’ expects argument of type ‘int *’, but argument 2 has type ‘E_DjiCameraManagerIrGainMode * {aka enum <anonymous> *}’ [-Wformat=]
             scanf("%d", &gainMode);
                    ~^   ~~~~~~~~~
[54/58] Building C object samples/sample_c++/platform/linux/manifold2/CMakeFiles/dji_sdk_demo_linux_cxx.dir/hal/hal_usb_bulk.c.o
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c: In function ‘HalUsbBulk_Init’:
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:102:67: warning: ‘/ep1’ directive output may be truncated writing 4 bytes into a region of size between 1 and 64 [-Wformat-truncation=]
             snprintf(usbBulk1EpOutFd, sizeof(usbBulk1EpOutFd), "%s/ep1",
                                                                   ^~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:102:13: note: ‘snprintf’ output between 5 and 68 bytes into a destination of size 64
             snprintf(usbBulk1EpOutFd, sizeof(usbBulk1EpOutFd), "%s/ep1",
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      linkConfig.usbBulkConfig.usbBulk1DeviceName);
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:104:65: warning: ‘/ep2’ directive output may be truncated writing 4 bytes into a region of size between 1 and 64 [-Wformat-truncation=]
             snprintf(usbBulk1EpInFd, sizeof(usbBulk1EpInFd), "%s/ep2",
                                                                 ^~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:104:13: note: ‘snprintf’ output between 5 and 68 bytes into a destination of size 64
             snprintf(usbBulk1EpInFd, sizeof(usbBulk1EpInFd), "%s/ep2",
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      linkConfig.usbBulkConfig.usbBulk1DeviceName);
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:106:67: warning: ‘/ep1’ directive output may be truncated writing 4 bytes into a region of size between 1 and 64 [-Wformat-truncation=]
             snprintf(usbBulk2EpOutFd, sizeof(usbBulk2EpOutFd), "%s/ep1",
                                                                   ^~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:106:13: note: ‘snprintf’ output between 5 and 68 bytes into a destination of size 64
             snprintf(usbBulk2EpOutFd, sizeof(usbBulk2EpOutFd), "%s/ep1",
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      linkConfig.usbBulkConfig.usbBulk2DeviceName);
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:108:65: warning: ‘/ep2’ directive output may be truncated writing 4 bytes into a region of size between 1 and 64 [-Wformat-truncation=]
             snprintf(usbBulk2EpInFd, sizeof(usbBulk2EpInFd), "%s/ep2",
                                                                 ^~~~
../samples/sample_c++/platform/linux/manifold2/hal/hal_usb_bulk.c:108:13: note: ‘snprintf’ output between 5 and 68 bytes into a destination of size 64
             snprintf(usbBulk2EpInFd, sizeof(usbBulk2EpInFd), "%s/ep2",
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      linkConfig.usbBulkConfig.usbBulk2DeviceName);
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[58/58] Linking CXX executable bin/dji_sdk_demo_linux_cxx
-- Cannot Find OPUS
-- Found LIBUSB installed in the system
--  - Includes: /usr/include/libusb-1.0
--  - Libraries: /usr/lib/x86_64-linux-gnu/libusb-1.0.so

dji_sdk_demo_linux_cxx...
-- Found OpenCV installed in the system, will use it to display image in AdvancedSensing APIs
--  - Includes: /usr/local/include;/usr/local/include/opencv
--  - Libraries: opencv_calib3d;opencv_core;opencv_dnn;opencv_features2d;opencv_flann;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_shape;opencv_stitching;opencv_superres;opencv_video;opencv_videoio;opencv_videostab;opencv_viz;opencv_aruco;opencv_bgsegm;opencv_bioinspired;opencv_ccalib;opencv_cvv;opencv_datasets;opencv_dnn_objdetect;opencv_dpm;opencv_face;opencv_freetype;opencv_fuzzy;opencv_hdf;opencv_hfs;opencv_img_hash;opencv_line_descriptor;opencv_optflow;opencv_phase_unwrapping;opencv_plot;opencv_reg;opencv_rgbd;opencv_saliency;opencv_sfm;opencv_stereo;opencv_structured_light;opencv_surface_matching;opencv_text;opencv_tracking;opencv_xfeatures2d;opencv_ximgproc;opencv_xobjdetect;opencv_xphoto
-- Found FFMPEG installed in the system
--  - Includes: /usr/include/x86_64-linux-gnu
--  - Libraries: /usr/lib/x86_64-linux-gnu/libavcodec.so;/usr/lib/x86_64-linux-gnu/libavformat.so;/usr/lib/x86_64-linux-gnu/libavutil.so;/usr/lib/x86_64-linux-gnu/libswresample.so;/usr/lib/x86_64-linux-gnu/libswscale.so;/usr/lib/x86_64-linux-gnu/libtheora.so;/usr/lib/x86_64-linux-gnu/libz.so
--  - Version:  3.4.11-0ubuntu0.1 
-- Cannot Find OPUS
-- Found LIBUSB installed in the system
--  - Includes: /usr/include/libusb-1.0
--  - Libraries: /usr/lib/x86_64-linux-gnu/libusb-1.0.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/eric/ct/Payload-SDK-github/cmake-build-debug

Build finished
whyscience commented 11 months ago

also this

hal_usb_bulk.c:106:13: note: ‘snprintf’ output between 5 and 68 bytes into a destination of size 64
             snprintf(usbBulk2EpOutFd, sizeof(usbBulk2EpOutFd), "%s/ep1",
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      linkConfig.usbBulkConfig.usbBulk2DeviceName);
dji-dev commented 11 months ago

Agent comment from shiyao.liao in Zendesk ticket #91743:

Dear Developer,

Hello, thank you for contacting DJI.

Sorry for the inconvenience. Which development platform and tool chain are you using for compilation? I will feed this information back to the R&D team.

Thank you for your support of DJI products.

Best Regards, DJI Dajiang innovation SDK technical support

°°°