How to build and run the linux sdk

I have downloaded the meeting sdk as specified. But there seems to be no documentation on how to build and run the sdk. How to include the header, library files included with the sdk ?

@chunsiong.zoom

@dhruv1778 which distro of linux are you using?

@chunsiong.zoom Ubuntu 22.04

@dhruv1778 ,

I’m sharing on this thread as well.

Install necessary dependencies

apt-get update &&
apt-get install -y build-essential cmake
apt-get install -y pkgconf
apt-get install -y gtkmm-3.0

apt-get update && apt-get install -y --no-install-recommends --no-install-suggests
libx11-xcb1
libxcb-xfixes0
libxcb-shape0
libxcb-shm0
libxcb-randr0
libxcb-image0
libxcb-keysyms1
libxcb-xtest0
libdbus-1-3
libglib2.0-0
libgbm1
libxfixes3
libgl1
libdrm2
libgssapi-krb5-2
openssl
ca-certificates
pkg-config
libegl-mesa0
libsdl2-dev
g+±multilib

Install CURL related libs

apt-get install -y libcurl4-openssl-dev

Install ALSA

apt-get install -y libasound2 libasound2-plugins alsa alsa-utils alsa-oss

Install Pulseaudio

apt-get install -y pulseaudio pulseaudio-utils ffmpeg

Here’s how my CMakeLists.txt looks like

cmake_minimum_required(VERSION 3.14)

project(meetingSDKDemo CXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_definitions(-std=c++14)
set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)

find_package(PkgConfig REQUIRED)
pkg_check_modules(GTKMM REQUIRED gtkmm-3.0)


include_directories(${GTKMM_INCLUDE_DIRS})
link_directories(${GTKMM_LIBRARY_DIRS})
add_definitions(${GTKMM_CFLAGS_OTHER})


include_directories(${CMAKE_SOURCE_DIR}/include)
include_directories(${CMAKE_SOURCE_DIR}/include/h) #this is where the SDK header files are located
include_directories(/usr/include/glib-2.0/)
include_directories(/usr/include/glib-2.0/glib)
include_directories(/usr/lib/x86_64-linux-gnu/glib-2.0/include/)

link_directories(${CMAKE_SOURCE_DIR}/lib/zoom_meeting_sdk) #this is where my SDK .so files are located
link_directories(${CMAKE_SOURCE_DIR}/lib/zoom_meeting_sdk/qt_libs)
link_directories(${CMAKE_SOURCE_DIR}/lib/zoom_meeting_sdk/qt_libs/Qt/lib)

add_executable(meetingSDKDemo 
              ${CMAKE_SOURCE_DIR}/meeting_sdk_demo.cpp
              ${CMAKE_SOURCE_DIR}/MeetingReminderEventListener.h
              ${CMAKE_SOURCE_DIR}/MeetingReminderEventListener.cpp
              ${CMAKE_SOURCE_DIR}/MeetingServiceEventListener.h
              ${CMAKE_SOURCE_DIR}/MeetingServiceEventListener.cpp
              ${CMAKE_SOURCE_DIR}/AuthServiceEventListener.h
              ${CMAKE_SOURCE_DIR}/AuthServiceEventListener.cpp
              ${CMAKE_SOURCE_DIR}/MeetingParticipantsCtrlEventListener.h
              ${CMAKE_SOURCE_DIR}/MeetingParticipantsCtrlEventListener.cpp
              ${CMAKE_SOURCE_DIR}/MeetingRecordingCtrlEventListener.h
              ${CMAKE_SOURCE_DIR}/MeetingRecordingCtrlEventListener.cpp
              ${CMAKE_SOURCE_DIR}/ZoomSDKRenderer.h
              ${CMAKE_SOURCE_DIR}/ZoomSDKRenderer.cpp
              ${CMAKE_SOURCE_DIR}/ZoomSDKAudioRawData.h
              ${CMAKE_SOURCE_DIR}/ZoomSDKAudioRawData.cpp
              )

target_link_libraries(meetingSDKDemo gcc_s gcc)
target_link_libraries(meetingSDKDemo meetingsdk)
target_link_libraries(meetingSDKDemo glib-2.0)
target_link_libraries(meetingSDKDemo ${GTKMM_LIBRARIES})
target_link_libraries(meetingSDKDemo curl)
target_link_libraries(meetingSDKDemo pthread)

# Create a symbolic link
execute_process(COMMAND ln -s libmeetingsdk.so libmeetingsdk.so.1
    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/lib/zoom_meeting_sdk
)





configure_file(${CMAKE_SOURCE_DIR}/config.json ${CMAKE_SOURCE_DIR}/bin/config.json COPYONLY)
file(COPY ${CMAKE_SOURCE_DIR}/lib/zoom_meeting_sdk/ DESTINATION ${CMAKE_SOURCE_DIR}/bin)

this is the folder structure, if it helps

@chunsiong.zoom Could you provide the demo app for linux meeting sdk ?

Could you provide the demo app for linux meeting sdk. +1

@15107478682 @dhruv1778 I’m working on it, I’ll tag you once it is published