# How to build and run the linux sdk

**URL:** <https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234>\
**Category:** Meeting SDK\
**Created:** [September 16, 2023, 3:25pm UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234 "2023-09-16T15:25:04Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![dhruv1778](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/dhruv1778/32/52123_2.png) [@dhruv1778](https://devforum.zoom.us/u/dhruv1778)\
**Post date:** [September 16, 2023, 3:25pm UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/1 "2023-09-16T15:25:04Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![chunsiong.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/chunsiong.zoom/32/35488_2.png) [@chunsiong.zoom](https://devforum.zoom.us/u/chunsiong.zoom)\
**Post date:** [September 18, 2023, 2:49am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/2 "2023-09-18T02:49:25Z")

</div>

@dhruv1778 which distro of linux are you using?

---

<div class="post-metadata">

**Author:** ![dhruv1778](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/dhruv1778/32/52123_2.png) [@dhruv1778](https://devforum.zoom.us/u/dhruv1778)\
**Post date:** [September 18, 2023, 6:54am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/3 "2023-09-18T06:54:05Z")

</div>

@chunsiong.zoom Ubuntu 22.04

---

<div class="post-metadata">

**Author:** ![chunsiong.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/chunsiong.zoom/32/35488_2.png) [@chunsiong.zoom](https://devforum.zoom.us/u/chunsiong.zoom)\
**Post date:** [September 18, 2023, 8:52am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/4 "2023-09-18T08:52:12Z")

</div>

@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

```auto
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)

```

---

<div class="post-metadata">

**Author:** ![chunsiong.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/chunsiong.zoom/32/35488_2.png) [@chunsiong.zoom](https://devforum.zoom.us/u/chunsiong.zoom)\
**Post date:** [September 18, 2023, 8:54am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/5 "2023-09-18T08:54:38Z")

</div>

this is the folder structure, if it helps

 ![image](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/0/d/0d4e7f24d615b8ad2048f5c8b4e92d6a8ced579e.png)

---

<div class="post-metadata">

**Author:** ![dhruv1778](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/dhruv1778/32/52123_2.png) [@dhruv1778](https://devforum.zoom.us/u/dhruv1778)\
**Post date:** [October 15, 2023, 4:03am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/6 "2023-10-15T04:03:03Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![15107478682](https://avatars.discourse-cdn.com/v4/letter/1/bbce88/32.png) [@15107478682](https://devforum.zoom.us/u/15107478682)\
**Post date:** [October 17, 2023, 7:02am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/8 "2023-10-17T07:02:17Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![chunsiong.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/chunsiong.zoom/32/35488_2.png) [@chunsiong.zoom](https://devforum.zoom.us/u/chunsiong.zoom)\
**Post date:** [October 17, 2023, 7:29am UTC](https://devforum.zoom.us/t/how-to-build-and-run-the-linux-sdk/95234/9 "2023-10-17T07:29:43Z")

</div>

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