1
mirror of https://invent.kde.org/network/falkon.git synced 2024-12-20 18:56:34 +01:00
falkonOfficial/BUILDING.md

141 lines
5.8 KiB
Markdown
Raw Normal View History

General
2011-10-17 09:57:07 +02:00
----------------------------------------------------------------------------------
2011-03-02 16:57:41 +01:00
If you can, you should use precompiled packages for your distribution.
But if you cannot use them, or they are not available, please read
this information before compiling.
2015-10-19 21:32:01 +02:00
After your binary is successfully compiled, you need to copy bin/ folder
from git to specific directory by your system you compiled for.
2011-10-17 09:57:07 +02:00
On Linux, you can easily do it by running make install.
If you are unsure where is the right place, you can check it directly from
2017-08-25 17:11:29 +02:00
Falkon by clicking from Help Menu on Configuration Information, then in
Path section.
2017-08-25 17:11:29 +02:00
You may want to build Falkon with debugging symbols (for generating
2012-02-26 12:12:38 +01:00
backtrace of crash) as easily as adding one line to src/defines.pri:
CONFIG += debug
2017-08-25 17:11:29 +02:00
Falkon requires Qt (>= 5.8) and QtWebEngine (at least version included in Qt 5.8)
2011-10-17 09:57:07 +02:00
Microsoft Windows
----------------------------------------------------------------------------------
2017-02-06 18:38:32 +01:00
You need Microsoft Visual C++ Compiler, Qt Libraries 5.8 or higher and openssl
2017-08-25 17:11:29 +02:00
libraries. in order to build Falkon.
2011-10-17 09:57:07 +02:00
Linux / Unix
----------------------------------------------------------------------------------
2017-02-06 18:38:32 +01:00
You need to have Qt 5 (>= 5.8) with QtWebEngine.
Next compulsory requirement is OpenSSL (libcrypto). xcb libraries are also
required unless you specify NO_X11 build option.
To build KWallet plugin, you need:
- KF5 KWallet
To build Gnome-Keyring plugin, you need
- libgnome-keyring-dev installed
For debug build, gdb is required by qmake.
MAC OS X
----------------------------------------------------------------------------------
You need to have Xcode from the Apple App Store installed in Applications, [Command Line Tools for the same Xcode version](https://developer.apple.com/) may be included depending on the version,
Mac: Repair current OpenSSL undefined reference from homebrew to dynamic (#1971) * Repair current OpenSSL static reference from homebrew * These are the default locations, as of today, for Mac OS X 10.11.4 *(El Capitan)* **NOTES** * This could really use some environment variables for homebrew root and which SSL version is in use. Not familiar enough yet with recent Qt to do this at this time. * Symbolic links could also be used but again determining the current homebrew SSL installed is something to be desired e.g. similar to `$ openssl version` e.g. perhaps a `cut` of `$ brew info openssl`? Refs: * http://brew.sh/ *(homepage)* * https://github.com/Homebrew/brew *(repo)* Historical refs: * #1888 * #1850 * Mac: Scrape `brew` output for openssl working install directory as per @nowrep * Addresses a long standing bug on Mac compiling with this project * Also correct the BUILDING markdown file for OS X... was awaiting response from the owner to do this to see which direction to move. **NOTES** * Quotes **are required** when using `$$system` here otherwise `cut` fails with no switch argument found Applies to #1971 * Fix BUILDING to BUILDING.md * Do this so it actually parses markdown Indirectly related to #1971 * Fix `brew` to Homebrew * Even though the project is named `brew` and owner is `Homebrew` their pages refers to it as `Homebrew` Applies to #1971 * Yet another change * There are more symlinks... so the results from `brew --prefix openssl` yields a symlinked path and adding `/include` and `/lib` to them resolve alternately to the `Cellar`. Feel **much** better about using this one since it's an exact API as I mentioned earlier in the PR Applies to #1971 * Add a single newline for @cranes-bill * Only one newline is needed and has nothing to do with trailing spaces... at least according to the GH editor * Restores the flow :) Applies to #1971 * More flow of README.md * GH preview said it didn't need this but I guess it does... we'll try newlines everywhere ;) Applies to #1971 * Use non-standard markdown for "newlines" * Restore the spaces manually **NOTES** This is not any known specification but it's what @nowrep wants Refs: * [CommonMark](http://commonmark.org/) * [Daring Fireballs](http://daringfireball.net/projects/markdown/)
2016-05-14 12:45:28 +02:00
[Homebrew](http://brew.sh/), and `$ brew install openssl` for openssl.
2017-02-06 18:38:32 +01:00
Next compulsory requirement is Qt 5 (>= 5.8) with QtWebEngine.
After successful compilation, you need to build the application bundle. You will do it with following command:
$ make bundle
FreeBSD
----------------------------------------------------------------------------------
2017-08-25 17:11:29 +02:00
You may need to set few sysctls to get Falkon running with raster graphics system.
For more informations, please see FAQ.
2011-10-17 09:57:07 +02:00
Available Defines
----------------------------------------------------------------------------------
2012-02-26 12:12:38 +01:00
You can set define directly in file (src/defines.pri)
or set environment variable by
$ export NAME="value"
General:
2017-08-25 17:11:29 +02:00
PORTABLE_BUILD Falkon won't write any data outside of path of execution.
It will also disable plugins by default.
(disabled by default)
example:
$ export PORTABLE_BUILD="true"
2012-01-21 20:29:33 +01:00
NONBLOCK_JS_DIALOGS Enable non-blocking JavaScript dialogs from alert() prompt()
and confirm() functions. They are shown inside page and are not
2012-01-21 20:29:33 +01:00
blocking application window.
However, due to synchronous API, there is a possible crash when
2012-01-21 20:29:33 +01:00
closing browser windows with opened dialogs.
If you can take this risk and/or make sure you aren't closing browser
with opened dialogs, you may enable this option.
These dialogs are much more beautiful than normal QDialogs.
(disabled by default)
2012-01-21 20:29:33 +01:00
example:
$ export NONBLOCK_JS_DIALOGS="true"
Windows specific defines:
W7API Enable Windows 7 API support
2011-10-17 09:57:07 +02:00
Requires linking against libraries from Microsoft Visual C++
Compiler 2010
(enabled by default)
Linux / Unix specific defines:
NO_X11 Disable all X11 calls.
Enable this when building for Wayland-only.
All X11 calls are guarded by runtime X11 platform check
even without this option.
example:
$ export NO_X11="true"
2017-08-25 17:11:29 +02:00
NO_SYSTEM_DATAPATH By default, Falkon is using /usr/share/falkon/ path
for storing themes and translations.
2017-08-25 17:11:29 +02:00
By setting this define, Falkon will use path of execution.
(disabled by default)
example:
$ export NO_SYSTEM_DATAPATH="true"
2017-08-25 17:11:29 +02:00
FALKON_PREFIX You can define different prefix.
Falkon binary will then be moved to PREFIX/bin/, use
PREFIX/share/falkon/ as datadir, PREFIX/share/applications for
desktop launcher and PREFIX/share/pixmaps for icon.
(default prefix is "/usr")
example:
2017-08-25 17:11:29 +02:00
$ export FALKON_PREFIX="/usr"
2016-02-07 16:38:22 +01:00
SHARE_FOLDER You can define the path of the share folder, i.e. /usr/share
2017-08-25 17:11:29 +02:00
Falkon will then use SHARE_FOLDER/falkon as datadir,
2016-02-07 16:38:22 +01:00
SHARE_FOLDER/applications for desktop launcher and
SHARE_FOLDER/pixmaps for the icon. By default it is not defined
and files will be installed as described above.
(default share folder is "/usr/share")
example:
$ export SHARE_FOLDER="/usr/share"
2016-02-07 16:38:22 +01:00
DISABLE_DBUS Build without QtDBus module. Native desktop notifications
will be disabled.
example:
$ export DISABLE_DBUS="true"