From: "Yordan Karadzhov (VMware)" <y.karadz@gmail.com> To: rostedt@goodmis.org Cc: linux-trace-devel@vger.kernel.org, "Yordan Karadzhov (VMware)" <y.karadz@gmail.com> Subject: [PATCH v8 07/44] kernel-shark: Update README Date: Mon, 4 Jan 2021 19:46:47 +0200 Message-ID: <20210104174724.70404-8-y.karadz@gmail.com> (raw) In-Reply-To: <20210104174724.70404-1-y.karadz@gmail.com> KernelShark is now separated from libtraceevent, libtracefs and trace-cmd. The README file has to be updated to reflect this. Signed-off-by: Yordan Karadzhov (VMware) <y.karadz@gmail.com> --- README | 129 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 67 insertions(+), 62 deletions(-) diff --git a/README b/README index 6c360bb..d7efd96 100644 --- a/README +++ b/README @@ -1,11 +1,13 @@ -This directory contains the new Qt-based version of the KernelShark GUI. +KernelShark is a front-end reader of tracing data. +The official repository is here: + https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git Third Party Software: ------------------------------------------------------------ KernelShark has the following external dependencies: - Cmake, Json-C, OpenGL/Glut, Qt5Base. + Cmake, Json-C, OpenGL/Glut, Qt5Base, libtraceevent, libtracefs, trace-cmd. 1. In order to install the packages on Ubuntu do the following: sudo apt-get install build-essential git cmake libjson-c-dev -y @@ -25,88 +27,91 @@ KernelShark has the following external dependencies: dnf install graphviz doxygen -y -Building: ------------------------------------------------------------- -1. Follow the instructions given in trace-cmd/README and build -the original trace-cmd end traceevent libraries. - -2. Building KernelShark: - -2.1 There is a simple and expert way to build KernelShark +3. In order to install the final dependencies do the following: + git clone https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/ + cd libtraceevent + make + sudo make install -2.1.1 Option 1 (simple) : build KernelShark as part of trace-cmd + git clone https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/ + cd libtracefs + make + sudo make install - (from the toplevel git tree) + git clone https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/ + cd trace-cmd + make + sudo make install_libs - make gui +Building: +------------------------------------------------------------ +2. Building KernelShark: - This will build the necessary parts of trace-cmd needed - by KernelShark. + cd kernel-shark/build + cmake ../ + make + sudo make install -2.1.1.1 By default, the installation prefix is "/usr/local". It can be -changed by passing in "prefix" to the build. +2.1 In order to create a Doxygen documentation add -D_DOXYGEN_DOC=1 +as a CMake Command-Line option. - make prefix=/usr gui +2.2 KernelShark has multiple build types. By default, the build type is +RelWithDebInfo, which will build a release candidate with debug information. +To change the type, pass in the option CMAKE_BUILD_TYPE=<type>. -2.1.1.2 Use "make clean" if you want to delete all already compiled objects. -This will also clean up all the files created by cmake. + cmake -DCMAKE_BUILD_TYPE=Debug - for "-g" option + cmake -DCMAKE_BUILD_TYPE=Release - for "-O3" option + cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo - for "-g -O2" option (default) + cmake -DCMAKE_BUILD_TYPE=MinSizeRel - for "-Os" option -2.1.1.3 KernelShark has multiple build types (See section 2.1.2.3 for more -details. By default, the build type is RelWithDebInfo, which will build -a release candidate with debug information. To change the type, pass in -the option BUILD_TYPE=<type> to the make process. +2.3 In addition to the standard CMake build types (Debug, Release, +RelWithDebInfo, MinSizeRel) KernelShark supports a "Package" build type. +By default this build type adds the "-O3" compiler flag. Package maintainers +can chose their own compiler flags by providing the corresponding +CMAKE_XXXX_FLAGS_PACKAGE Command-Line options (see the example below). - make BUILD_TYPE=Debug gui - for "-g" option - make BUILD_TYPE=Release gui - for "-O3" option - make BUILD_TYPE=RelWithDebInfo gui - for "-g -O2" option (default) - make BUILD_TYPE=MinSizeRel gui - for "-Os" option +-- Note that when built as a "Package" the RPATH-s of the executables are +set directly to _INSTALL_PREFIX/lib/kernelshark/ -2.1.2 Option 2 (expert) : standalone build of KernelShark (for hackers only) +2.4 After building the code "kernel-shark/lib" will contain all libraries +and "kernel-shark/bin" will contain all executables. - (note, you may need to do a normal make from the toplevel git - tree before performing the following) +2.5 Use the script "cmake_clean.sh" if you want to delete all already +compiled objects and all files generated by CMake. - make - cd kernel-shark/build - cmake ../ - make + cd kernel-shark/build + ./cmake-clean.sh - This gives you a bit more control as you may easily pass in - your own cmake options. +2.6 By default, installation prefix is "/usr/local". It can be changed using +-D_INSTALL_PREFIX= as a CMake Command-Line option. -2.1.2.1 In order to create a Doxygen documentation add -D_DOXYGEN_DOC=1 -as a CMake Command-Line option. +2.7 In order to uninstall KernelShark do: + cd kernel-shark/build + ./cmake_uninstall.sh -2.1.2.2 By default, installation prefix is "/usr/local". It can be changed using --D_INSTALL_PREFIX= as a CMake Command-Line option. -2.1.2.3 In addition to the standard CMake build types (Debug, Release, -RelWithDebInfo, MinSizeRel) KernelShark supports a "Package" build type. -By default this build type adds the "-O2" compiler flag. Package maintainers -can chose their own compiler flags by providing the corresponding -CMAKE_XXXX_FLAGS_PACKAGE Command-Line options (see the example below). +CMake examples: --- Note that when built as a "Package" the RPATH-s of the executables are -set directly to _INSTALL_PREFIX/lib/kernelshark/ + cmake -D_DOXYGEN_DOC=1 -D_INSTALL_PREFIX=/usr ../ --- Note that when built as a "Debug" the "Record" dialog will try to use the -version of the trace-cmd executable from the build location. In all other cases -the dialog will derive the absolut path to the trace-cmd executable from -"_INSTALL_PREFIX", hence the dialog will use the installed version. + cmake -DCMAKE_BUILD_TYPE=Package -DCMAKE_C_FLAGS_PACKAGE="-O3 -pedantic" ../ -If no build types is specified, the type will be "RelWithDebInfo". -Examples: +Contributions: +------------------------------------------------------------ +3. For questions about the use of the library, please send email to: + linux-trace-users@vger.kernel.org - cmake -D_DOXYGEN_DOC=1 -D_INSTALL_PREFIX=/usr ../ + Subscribe: http://vger.kernel.org/vger-lists.html#linux-trace-users + Archives: https://lore.kernel.org/linux-trace-users/ - cmake -DCMAKE_BUILD_TYPE=Package -DCMAKE_C_FLAGS_PACKAGE="-O3 -pedantic" ../ +3.1 For contributions to development, please send patches to: + linux-trace-devel@vger.kernel.org -2.1.2.4 Use the script "cmake_clean.sh" if you want to delete all already -compiled objects and all files generated by CMake. + Subscribe: http://vger.kernel.org/vger-lists.html#linux-trace-devel + Archives: https://lore.kernel.org/linux-trace-devel/ - cd kernel-shark/build - ./cmake-clean.sh +3.2 Note, this project follows the style of submitting patches as described +by the Linux kernel. -3. After building the code "kernel-shark/lib" will contain all libraries -and "kernel-shark/bin" will contain all executables. + https://www.kernel.org/doc/html/v5.4/process/submitting-patches.html -- 2.25.1
next prev parent reply index Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-01-04 17:46 [PATCH v8 00/44] Start KernelShark v2 transformation Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 01/44] kernel-shark: Adopt trace-cmd API changes Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 02/44] kernel-shark: Use libtraceevent and libtracefs Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 03/44] kernel-shark: Add license information Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 04/44] kernel-shark: Change the CMake minimum version required Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 05/44] kernel-shark: Change default libraries install location Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 06/44] kernel-shark: Split the installation in two components Yordan Karadzhov (VMware) 2021-01-04 17:46 ` Yordan Karadzhov (VMware) [this message] 2021-01-04 17:46 ` [PATCH v8 08/44] kernel-shark: Define build target for JSONC Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 09/44] kernel-shark: Use only signed types in kshark_entry Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 10/44] kernel-shark: Add stream_id to kshark_entry Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 11/44] kernel-shark: Introduce libkshark-hash Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 12/44] kernel-shark: Introduce Data streams Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 13/44] kernel-shark: Rename static methods in libkshark Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 14/44] kernel-shark: Add basic methods for Data streams Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 15/44] kernel-shark: Housekeeping before implementing stream interface Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 16/44] kernel-shark: Add stream interface for trace-cmd data Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 17/44] kernel-shark: Start introducing KernelShark 2.0 Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 18/44] kernel-shark: Start using data streams Yordan Karadzhov (VMware) 2021-01-04 17:46 ` [PATCH v8 19/44] kernel-shark: Remove dead code Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 20/44] kernel-shark: Redesign the plugin interface Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 21/44] kernel-shark: Complete the stream integration Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 22/44] kernel-shark: Provide merging of multiple data streams Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 23/44] kernel-shark: Integrate the stream definitions with data model Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 24/44] kernel-shark: Use only signed types for model defs Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 25/44] kernel-shark: Add ksmodel_get_bin() Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 26/44] kernel-shark: Protect ksmodel_set_in_range_bining() Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 27/44] kernel-shark: Add methods for time calibration Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 28/44] kernel-shark: Integrate streams with libkshark-configio Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 29/44] kernel-shark: Add support for drawing text Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 30/44] kernel-shark: Make GLUT optional dependency Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 31/44] kernel-shark: Add ksplot_draw_polyline() Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 32/44] kernel-shark: Optimize ksplot_draw_polygon() Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 33/44] kernel-shark: Add basic infrastructure for testing Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 34/44] kernel-shark: Add "github Actions" workflow Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 35/44] kernel-shark: Integrate streams with KsPlotTools Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 36/44] kernel-shark: Add getStreamColorTable() Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 37/44] kernel-shark: Redefine the args of KsPlot::getColor() Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 38/44] kernel-shark: Add TextBox class to KsPlot namespace Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 39/44] kernel-shark: Consistent method naming in KsPlotTools Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 40/44] kernel-shark: Make the label part of the graph Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 41/44] kernel-shark: Remove the hard-coded Idle PID Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 42/44] kernel-shark: Add class Polyline to KsPlot namespace Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 43/44] kernel-shark: Add VirtBridge and VirtGap classes Yordan Karadzhov (VMware) 2021-01-04 17:47 ` [PATCH v8 44/44] kernel-shark: Add double click interface to PlotObject Yordan Karadzhov (VMware) 2021-01-05 0:27 ` [PATCH v8 00/44] Start KernelShark v2 transformation Steven Rostedt
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210104174724.70404-8-y.karadz@gmail.com \ --to=y.karadz@gmail.com \ --cc=linux-trace-devel@vger.kernel.org \ --cc=rostedt@goodmis.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Linux-Trace-Devel Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-trace-devel/0 linux-trace-devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-trace-devel linux-trace-devel/ https://lore.kernel.org/linux-trace-devel \ linux-trace-devel@vger.kernel.org public-inbox-index linux-trace-devel Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-trace-devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git