mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-01-17 11:28:07 +00:00
Update ReadMe and ChangeLog
Add rootca.pem in the installation Set SDK to fix paths
This commit is contained in:
parent
b4cbbf96ed
commit
0d6e01561f
5 changed files with 85 additions and 65 deletions
|
|
@ -17,10 +17,12 @@
|
|||
- TelKeypad supports A, B, C and D keys.
|
||||
- TelKeypad supports keyboard.
|
||||
- OpenH264 codec can be download in the application.
|
||||
- Remove useless splashscreen.
|
||||
- New icons
|
||||
- Disable screensaver on fullscreen video call.
|
||||
- Add caller/callee on saved files.
|
||||
- Supports totally french, english, portuguese, russian, turkish, ukrainian.
|
||||
- App Nap avoiding for MacOs
|
||||
|
||||
|
||||
### Fixes
|
||||
|
||||
|
|
@ -29,6 +31,11 @@
|
|||
- Do not use `:` separator when a file is saved on Windows.
|
||||
- Avoid mark as read on selected chat room if window is not active.
|
||||
|
||||
### Removed
|
||||
|
||||
- Prepare.py configuration
|
||||
- Remove useless splashscreen.
|
||||
|
||||
## 4.1.0 - 2017-07-19
|
||||
|
||||
### Features
|
||||
|
|
|
|||
132
README.md
132
README.md
|
|
@ -2,9 +2,31 @@
|
|||
|
||||
# Linphone Desktop
|
||||
|
||||

|
||||
Linphone is an open source softphone for voice and video over IP calling and instant messaging.
|
||||
|
||||
Linphone is a free VoIP and video softphone based on the SIP protocol.
|
||||
It is fully SIP-based, for all calling, presence and IM features.
|
||||
|
||||
General description is available from [linphone web site](https://www.linphone.org/technical-corner/linphone)
|
||||
|
||||
### License
|
||||
|
||||
Copyright © Belledonne Communications
|
||||
|
||||
Linphone is dual licensed, and is available either :
|
||||
|
||||
- under a [GNU/GPLv3 license](https://www.gnu.org/licenses/gpl-3.0.en.html), for free (open source). Please make sure that you
|
||||
|
||||
understand and agree with the terms of this license before using it (see LICENSE file for details).
|
||||
|
||||
- under a proprietary license, for a fee, to be used in closed source applications. Contact
|
||||
|
||||
[Belledonne Communications](https://www.linphone.org/contact) for any question about costs and services.
|
||||
|
||||
### Documentation
|
||||
|
||||
- Supported features and RFCs : https://www.linphone.org/technical-corner/linphone/features
|
||||
|
||||
- Linphone public wiki : https://wiki.linphone.org/xwiki/wiki/public/view/Linphone/
|
||||
|
||||
## Getting started
|
||||
|
||||
|
|
@ -12,9 +34,20 @@ Installing dependencies:
|
|||
|
||||
apt-get install libqt53dcore5:amd64 libqt53dextras5:amd64 libqt53dinput5:amd64 libqt53dlogic5:amd64 libqt53dquick5:amd64 libqt53dquickextras5:amd64 libqt53dquickinput5:amd64 libqt53dquickrender5:amd64 libqt53drender5:amd64 libqt5concurrent5:amd64 libqt5core5a:amd64 libqt5dbus5:amd64 libqt5designer5:amd64 libqt5designercomponents5:amd64 libqt5gui5:amd64 libqt5help5:amd64 libqt5multimedia5:amd64 libqt5multimedia5-plugins:amd64 libqt5multimediawidgets5:amd64 libqt5network5:amd64 libqt5opengl5:amd64 libqt5opengl5-dev:amd64 libqt5positioning5:amd64 libqt5printsupport5:amd64 libqt5qml5:amd64 libqt5quick5:amd64 libqt5quickcontrols2-5:amd64 libqt5quickparticles5:amd64 libqt5quicktemplates2-5:amd64 libqt5quicktest5:amd64 libqt5quickwidgets5:amd64 libqt5script5:amd64 libqt5scripttools5:amd64 libqt5sensors5:amd64 libqt5serialport5:amd64 libqt5sql5:amd64 libqt5sql5-sqlite:amd64 libqt5svg5:amd64 libqt5svg5-dev:amd64 libqt5test5:amd64 libqt5webchannel5:amd64 libqt5webengine-data libqt5webenginecore5:amd64 libqt5webenginewidgets5:amd64 libqt5webkit5:amd64 libqt5widgets5:amd64 libqt5x11extras5:amd64 libqt5xml5:amd64 libqt5xmlpatterns5:amd64 qt5-default:amd64 qt5-doc qt5-gtk-platformtheme:amd64 qt5-qmake:amd64 qt5-qmltooling-plugins:amd64
|
||||
|
||||
|
||||
|
||||
Here are the general instructions to build linphone for desktop. The specific instructions for each build platform is described just below.
|
||||
You will need the tools defined for Linphone-SDK 4.3 :
|
||||
- cmake >= 3.6
|
||||
- python = 2.7 (python 3.7 if C# wrapper generation is disabled)
|
||||
- pip
|
||||
- yasm
|
||||
- nasm
|
||||
- doxygen
|
||||
- Pystache (use pip install pystache)
|
||||
- six (use pip install six)
|
||||
- Perl (can be downloaded at http://strawberryperl.com/ for Windows. Set your Path to perl binaries)
|
||||
|
||||
Set your environment:
|
||||
|
||||
|
||||
1. Install some build tools: `CMake`, `Python` and `Qt5` (_5.9 or newer_). `C++11` support is required!
|
||||
It's necessary to install the `pip` command and to execute:
|
||||
|
|
@ -27,20 +60,41 @@ Here are the general instructions to build linphone for desktop. The specific in
|
|||
|
||||
3. The `PATH` environment variable must point to the Qt5 directory `bin`. Example:
|
||||
|
||||
PATH="~/Qt/5.9/gcc_64/bin/:$PATH"
|
||||
PATH="~/Qt/5.9/gcc_64/bin/:$PATH"
|
||||
|
||||
4. Prepare the build by running the `prepare.py` script.
|
||||
5. Build the project using the appropriate build tool (`make`, `ninja`, `Xcode`, `Visual Studio (2013 or 2015 version)`).
|
||||
|
||||
Building:
|
||||
|
||||
### Specific instructions for the GNU/Linux and Mac OS X platforms
|
||||
The build is done in 3 steps. First, you need to build the SDK, then the submodule Minizip and finally, the application.
|
||||
|
||||
1. Create your build folder at the root of the project : `mkdir build-desktop`
|
||||
Go to this new folder and begin the build process : `cd build-desktop`
|
||||
|
||||
2. Prepare your options : `cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo` By default, it will try compile all dependencies. You can remove some by adding `-ENABLE_<COMPONENT>=NO` to the command. You can use `cmake-gui ..` if you want to have a better access to them.
|
||||
|
||||
3. Build the SDK : `cmake --build . --target sdk`. You can add `--parallel 10` if you have CMake>3.12 to speedup the process.
|
||||
|
||||
4. Build The submodule. `cmake ..` and `cmake --build . --target install`
|
||||
|
||||
5. Finish the process with a new `cmake ..` and `cmake --build . --target install`.
|
||||
|
||||
When all are over, the files will be in the OUTPUT folder in the build directory.
|
||||
|
||||
You can find a script file for each supported platform to achieve the first building. Don't use it for a second one, they only exist for convenience.
|
||||
There are called build_all_linux.sh, build_all_macos.sh and build_all_win.bat.
|
||||
|
||||
#### General Troubleshooting
|
||||
|
||||
* The latest version of Doxygen doesn't work with the SDK. If you have a specific version of Doxygen that is not in your PATH, you can use `-DLINPHONESDK_DOXYGEN_PROGRAM`.
|
||||
|
||||
Eg on Mac : `-DLINPHONESDK_DOXYGEN_PROGRAM=/Applications/Doxygen.app/Contents/Resources/doxygen=/Applications/Doxygen.app/Contents/Resources/doxygen`
|
||||
|
||||
* If the build of the SDK crash with something like "cmd.exe failed" and no more info, it can be a dependency that is not available. You have to check if all are in your PATH.
|
||||
Usually, if it is about VPX or Decaf, this could come from your Perl installation.
|
||||
|
||||
1. Prepare the build in a terminal by running the following command in the current directory:
|
||||
|
||||
./prepare.py -DENABLE_DOC=OFF
|
||||
|
||||
2. Build the project in a terminal with:
|
||||
|
||||
make
|
||||
|
||||
#### Mac OS X Troubleshooting
|
||||
To install the required dependencies on Mac OS X, you can use [Homebrew](https://brew.sh/).
|
||||
|
|
@ -57,69 +111,29 @@ Before you install packages with Brew, you may have to change directories permis
|
|||
pip install pystache
|
||||
pip install graphviz
|
||||
|
||||
3. Finish the pre-build by cleaning the obsolete files and then run prepare.py and make again:
|
||||
|
||||
./prepare.py -c
|
||||
./prepare.py -DENABLE_DOC=OFF
|
||||
make
|
||||
|
||||
### Specific instructions for the Windows platform
|
||||
|
||||
1. Ensure that you have downloaded the `Qt msvc2015 version` (32-bit). (64-bit version is not supported at this moment by Linphone Desktop.) `MinGW` must be installed too.
|
||||
1. Ensure that you have downloaded the `Qt msvc2015 version` or `Qt msvc2017 version` (32-bit). (64-bit version is not supported at this moment by Linphone Desktop.) `MinGW` must be installed too.
|
||||
|
||||
2. Define the `Qt5_DIR` and `PATH` environment variable to the Qt5 installation path:
|
||||
|
||||
Qt5_DIR="C:\Qt\5.9\msvc2015\lib\cmake"
|
||||
PATH="C:\Qt\5.9\msvc2015\bin;%PATH%"
|
||||
|
||||
3. Open a Windows command line (cmd.exe) in the current directory and run:
|
||||
2. Or open a Command line with Visual Studio `Developer Comand Prompt for VS 2017` and call qtenv2.bat that is in your qt binaries eg: C:\Qt\5.12.6\msvc2017\bin\qtenv2.bat
|
||||
|
||||
python prepare.py -G "Visual Studio 15 2017" -DENABLE_DOC=OFF
|
||||
3. Install msys-coreutils : `mingw-get install msys-coreutils`
|
||||
|
||||
4. Run the following command in the root directory of linphone-desktop:
|
||||
4. Build as usual with adding `-A Win32` to each command (General Steps)
|
||||
|
||||
cmake --build WORK\desktop\cmake --config Release
|
||||
5. The project folder will be in the build directory.
|
||||
|
||||
Or Open the generated Visual Studio solution `Project.sln.lnk` and build it. Check if the `Release` option is selected in Visual Studio. (With `Win32`!)
|
||||
|
||||
## Known bugs and issues
|
||||
|
||||
* __4K (High DPI Displays)__ If you encounter troubles with high DPI displays on Windows, please to see this link: https://bugreports.qt.io/browse/QTBUG-53022
|
||||
|
||||
## Customizing your build
|
||||
|
||||
Some options can be given during the `prepare.py` step to customize the build. The basic usage of the `prepare.py` script is:
|
||||
|
||||
./prepare.py [options]
|
||||
|
||||
Here are the main options you can use.
|
||||
|
||||
### Building with debug symbols
|
||||
|
||||
Building with debug symbols is necessary if you want to be able to debug the application using some tools like GDB or the Visual Studio debugger. To do so, pass the `--debug` option to `prepare.py`:
|
||||
|
||||
./prepare.py --debug [other options]
|
||||
|
||||
### Generating an installation package (on Windows and Mac OS X platforms)
|
||||
|
||||
You might want to generate an installation package to ease the distribution of the application. To add the package generation step to the build just run:
|
||||
|
||||
./prepare.py --package [other options]
|
||||
|
||||
### Activate the build of all codecs
|
||||
|
||||
./prepare.py --all-codecs
|
||||
|
||||
### Using more advanced options
|
||||
|
||||
The `prepare.py` script is wrapper around CMake. Therefore you can give any CMake option to the `prepare.py` script.
|
||||
To get a list of the options you can pass, you can run:
|
||||
|
||||
./prepare.py --list-cmake-variables
|
||||
|
||||
The options that enable you to configure what will be built are the ones beginning with `ENABLE_`. So for example, you might want to build linphone without the opus codec support. To do so use:
|
||||
|
||||
./prepare.py -DENABLE_OPUS=NO
|
||||
|
||||
## Updating your build
|
||||
|
||||
|
|
@ -129,9 +143,7 @@ You need to update the project:
|
|||
git submodule sync && git submodule update --init --recursive
|
||||
|
||||
Then simply re-building using the appropriate tool corresponding to your platform (make, Visual Studio...) should be sufficient to update the build (after having updated the source code via git).
|
||||
However if the compilation fails, you may need to rebuild everything from scratch using:
|
||||
|
||||
./prepare.py -c && ./prepare.py [options]
|
||||
However if the compilation fails, you may need to rebuild everything from scratch (Delete all files in your build-desktop folder).
|
||||
|
||||
Then you re-build as usual.
|
||||
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ IF NOT EXIST build-desktop mkdir build-desktop
|
|||
|
||||
:: SDK Building
|
||||
cd build-desktop
|
||||
:: Full config
|
||||
::cmake .. -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_VPX=YES -A Win32 -DENABLE_GPL_THIRD_PARTIES=YES -DENABLE_NON_FREE_CODECS=YES -DENABLE_AMRNB=YES -DENABLE_AMRWB=YES -DENABLE_G729=YES -DENABLE_GSM=YES -DENABLE_ILBC=YES -DENABLE_ISAC=YES -DENABLE_OPUS=YES -DENABLE_SILK=YES -DENABLE_SPEEX=YES -DENABLE_H263=YES -DENABLE_H263P=YES -DENABLE_MPEG4=YES -DENABLE_OPENH264=YES -DENABLE_FFMPEG=YES -DENABLE_VIDEO=YES -DENABLE_GL=YES
|
||||
:: Default config
|
||||
cmake .. -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=RelWithDebInfo -A Win32
|
||||
:: Mini config
|
||||
cmake .. -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_VPX=NO -DENABLE_OPUS=NO -A Win32 -DENABLE_VIDEO=YES -DENABLE_GL=YES
|
||||
::cmake .. -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_VPX=NO -DENABLE_OPUS=NO -A Win32 -DENABLE_VIDEO=YES -DENABLE_GL=YES
|
||||
if %errorlevel% neq 0 exit /b %errorlevel%
|
||||
cmake --build . --target sdk --config RelWithDebInfo --parallel 10
|
||||
if %errorlevel% neq 0 exit /b %errorlevel%
|
||||
|
|
|
|||
|
|
@ -183,6 +183,7 @@ if (WIN32)
|
|||
endif ()
|
||||
install(DIRECTORY "${LINPHONE_SDK_TMP}/share/images" DESTINATION "share" USE_SOURCE_PERMISSIONS)
|
||||
install(DIRECTORY "${LINPHONE_SDK_TMP}/share/sounds" DESTINATION "share" USE_SOURCE_PERMISSIONS)
|
||||
install(FILES "${LINPHONE_SDK_TMP}/share/Linphone/rootca.pem" DESTINATION "share/Linphone/")
|
||||
|
||||
# list(REMOVE_ITEM SHARE_CONTENT "share/belr" "share/Belr" "share/images" "share/${APPLICATION_NAME}" "share/${APPLICATION_NAME}" "share/sounds")
|
||||
# foreach (ITEM IN LISTS SHARE_CONTENT)
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit cad6724afade785b6649061059e03473439fb0b5
|
||||
Subproject commit 47f1db409ae379a6a86f9b6829874cb70dd04c8e
|
||||
Loading…
Add table
Reference in a new issue