Environnement Windows CLion déboguant le code source du serveur multimédia de streaming SRS

Présentation de l'environnement :
SRS prend en charge CLion de JetBrains, qui est compilé sur la base de cmake, utilise CLion dans l'environnement Windows, débogue SRS à distance via SSH et l'environnement de débogage est installé sur la machine virtuelle CentOS 7.
Téléchargement des ressources :
adresse de téléchargement du site Web officiel de CLion : https://www.jetbrains.com/zh-cn/clion/ , la version que j'ai téléchargée est CLion-2022.2.3.exe, version Windows.
Adresse de téléchargement SRS : https://github.com/ossrs/srs , j'ai téléchargé srs-4.0release.zip.

Construction de l'environnement
1. Démarrez la machine virtuelle CentOS 7 et l'installation dépend de l'environnement.Ne choisissez pas l'installation en chinois pour le système centos7.

yum install perl-core cmake gcc gcc-c++ gdb -y

L'ancienne version de cmake est installée ci-dessus. Si vous souhaitez installer une nouvelle version, vous pouvez supprimer cmake ci-dessus et installer cmake3.21.1 :

wget -c https://github.com/Kitware/CMake/releases/download/v3.21.1/cmake-3.21.1.tar.gz
yum install openssl openssl-devel
tar -zxvf cmake-3.21.1.tar.gz
cd cmake-3.21.1
./bootstrap
make 
make install
ln -s /usr/local/bin/cmake /bin/cmake
cmake --version

2. Décompressez le code source srs, utilisez le menu File-Open de CLion et ouvrez le répertoire du code source srs Le code téléchargé par Windows doit être compilé sous linux avec des sauts de ligne LF.
insérez la description de l'image ici

3. Fichier -> Paramètres -> Outils -> Configurations SSH, créez un lien SSH.
insérez la description de l'image ici
4. File–>Settings–>Build, Execution, Deployment–>Toolchains, configurez la chaîne d'outils, ajoutez un hôte distant avec le signe +, sélectionnez le SSH créé ci-dessus et les compilateurs cmake, C et C++ le reconnaîtront automatiquement. Si la version est mise à niveau, elle ne peut pas Identification automatique, vous pouvez également parcourir à distance le répertoire sur l'hôte CentOS 7, cliquez sur la flèche vers le haut pour ajuster vers le haut.
insérez la description de l'image ici

5. Une fois que l'étape précédente est OK, allez dans File->Settings->Build, Execution, Deployment->Deployment pour configurer le déploiement à distance. Un hôte distant (type SFTP, sinon, ajoutez-le manuellement) est automatiquement généré ici.
insérez la description de l'image ici
Cliquez sur l'onglet Mappages et sélectionnez le bouton Parcourir le dossier à droite pour sélectionner le chemin de stockage local du code source srs et le chemin de stockage distant de CentOS 7. Si le code source a été ouvert, le chemin local sera automatiquement reconnu.
insérez la description de l'image ici
6. Une fois l'option Déploiement définie, cliquez avec le bouton droit sur le répertoire principal du projet, sélectionnez Déploiement, Télécharger vers et téléchargez le code source dans le répertoire de déploiement distant de CentOS 7. Après le téléchargement, vous pouvez voir le code source sur CentOS. 7.
insérez la description de l'image ici
insérez la description de l'image ici
7. Outils -> Démarrez la session ssh, appelez la ligne de commande linux distante et compilez le code source SRS.

cd /home/chuwei/work/srs/trunk/
sudo yum install libasan#cannot find /usr/lib64/libasan.so.0.0.0报错执行
sudo chmod 777 -R *#部分脚本需要权限才能执行
sudo ./configure
sudo make

insérez la description de l'image ici
8. Cliquez avec le bouton droit sur le répertoire principal du projet, sélectionnez Déploiement, Télécharger depuis, sélectionnez Déploiement à distance et téléchargez le fichier compilé en local, comme à l'étape 6 ci-dessus.
9. File->Settings->Build, Execution, Deployment->CMake, vous pouvez configurer les options de compilation, les répertoires de construction, etc.
insérez la description de l'image ici

10. Une fois le téléchargement terminé, sélectionnez le répertoire trunk/ide/srs_clion, cliquez avec le bouton droit et sélectionnez CMakeLists.txt, chargez le projet CMake et exécutez cmake.

sudo chmod 777 -R *#因为远端生成了新的文件,执行cmake前再修改一次权限

Solution d'erreur : /objs/st/libst.a introuvable, la bibliothèque libst n'est pas compilée correctement, commentez simplement ces lignes dans CMakeLists.txt (la version supérieure SRS peut être compilée normalement)

#${SRS_DIR}/objs/srt/lib/libsrt.a
#${SRS_DIR}/src/srt
#AUX_SOURCE_DIRECTORY(${SRS_DIR}/src/srt SOURCE_FILES)

Après avoir exécuté cmake avec succès, Run -> Edit Configuratios génère automatiquement l'application CMake de srs, configure les paramètres de démarrage, le répertoire de travail et les variables d'environnement, et compile après la configuration.
insérez la description de l'image ici
11. Cliquez sur le marteau vert dans le coin supérieur gauche de l'image ci-dessus pour compiler. Une fois la compilation réussie, cliquez sur le bogue vert pour déboguer, vous pouvez créer un point d'arrêt, touches de raccourci de débogage clion : F7 pour entrer dans la fonction, F8 pour pas à pas dans le débogage, F9 pour passer au point d'arrêt suivant.
insérez la description de l'image ici
Une erreur de compilation signale un identifiant non déclaré nullptr, cmake ne peut pas utiliser correctement les fonctionnalités C++11, vous pouvez l'ajouter au makefile :

SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++11")

Une erreur est signalée indiquant que #include <srt/srt.h> est introuvable, vous pouvez commenter cette ligne.

Je suppose que tu aimes

Origine blog.csdn.net/weixin_40355471/article/details/127833119
conseillé
Classement