https://github.com/CoatiSoftware/Sourcetrail Skip to content Sign up * Why GitHub? Features - + Mobile - + Actions - + Codespaces - + Packages - + Security - + Code review - + Project management - + Integrations - + GitHub Sponsors - + Customer stories - + Security - * Team * Enterprise * Explore + Explore GitHub - Learn & contribute + Topics - + Collections - + Trending - + Learning Lab - + Open source guides - Connect with others + The ReadME Project - + Events - + Community forum - + GitHub Education - + GitHub Stars program - * Marketplace * Pricing Plans - + Compare plans - + Contact Sales - + Nonprofit - + Education - [ ] [search-key] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} CoatiSoftware / Sourcetrail * Sponsor Sponsor CoatiSoftware/Sourcetrail * Watch 253 * Star 9.7k * Fork 633 Sourcetrail - free and open-source interactive source explorer www.sourcetrail.com/ GPL-3.0 License 9.7k stars 633 forks Star Watch * Code * Issues 323 * Pull requests 4 * Actions * Projects 4 * Wiki * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Wiki * Security * Insights master 7 branches 50 tags Go to file Code Clone HTTPS GitHub CLI [https://github.com/C] Use Git or checkout with SVN using the web URL. [gh repo clone CoatiS] Work fast with our official CLI. Learn more. * Open with GitHub Desktop * Download ZIP Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching Xcode If nothing happens, download Xcode and try again. Go back Launching Visual Studio If nothing happens, download the GitHub extension for Visual Studio and try again. Go back Latest commit @ymarkovitch Yakov Markovitch ymarkovitch and Yakov Markovitch src: simplify symbolic link resolution in Linux Sourcetrail launch sc... ... 37b4bbb Feb 15, 2021 src: simplify symbolic link resolution in Linux Sourcetrail launch sc... ...ript (#1134) Co-authored-by: Yakov Markovitch 37b4bbb Git stats * 2,720 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .github res: Create Funding.yml Nov 18, 2019 bin build(deps-dev): bump junit (#1097) Oct 19, 2020 cmake build: Migrate Linux '.tar.gz' package creation from CPack to linuxde... Jun 8, 2020 deployment build: make Java tests run on Linux CI (#1127) Jan 11, 2021 docs docs: update language support version numbers in docu Jan 11, 2021 ide_plugins build: add plugin folders to Windows package Jul 19, 2017 java_indexer src: Apply clang-format and extend use to Java code (#973) Apr 19, 2020 script docs: fixed typos (#1131) Feb 8, 2021 setup src: simplify symbolic link resolution in Linux Sourcetrail launch sc... Feb 15, 2021 src src: fix java path detection failures on linux (#1138) Feb 15, 2021 testing src: Rename aggregation edge to bundled edges (#1051) Jun 29, 2020 .clang-format src: Apply clang-format and extend use to Java code (#973) Apr 19, 2020 .gitignore build: Copy Clang compiler headers from Clang build dir in CMake (issue May 9, 2020 .travis.yml build: Provide AppImage package for Linux (issue #279) (#945) Mar 29, 2020 AUTHORS.txt Fixes for Clang 10 compatibility (closes #965) (#968) Jun 7, 2020 CHANGELOG.md docs: fixed typos (#1131) Feb 8, 2021 CMakeLists.txt build: fix compiler issue when CMAKE_CXX_COMPILER_LAUNCHER was set to... Oct 19, 2020 CONTRIBUTING.md docs: fixed typos (#1131) Feb 8, 2021 LICENSE.txt data: added GNU General Public License Nov 17, 2019 README.md build: Update to LLVM 11.0.0 (issue #1088) (#1116) Dec 1, 2020 SPONSORS.md res: Updated SPONSORS.md - February 2021 Feb 15, 2021 appveyor.yml build: replace winrar dependency by 7z (#1077) Sep 8, 2020 View code README.md Sourcetrail Sourcetrail is a free and open-source cross-platform source explorer that helps you get productive on unfamiliar source code. Windows: Build status Linux: Build Status Links * Website * Download * Quick Start Guide * Documentation * Changelog * Slack Channel * Mailing List * Patreon "Sourcetrail User Interface" Sourcetrail is: * free * working offline * operating on Windows, macOS and Linux * supporting C, C++, Java and Python * offering an SDK (SourcetrailDB) to write custom language extensions Support Sourcetrail via Patreon The ongoing development and regular software releases are made possible entirely by the support of these awesome patrons! If you'd like to join them, please consider becoming a patron of Sourcetrail. Using Sourcetrail To setup Sourcetrail on your machine, you can either download the respective build for your operating system from our list of Releases and install it on your machine, or use one of the following package managers: * Use the Chocolatey package with choco install sourcetrail After your installation is complete, follow our Quick Start Guide to get to know Sourcetrail. How to Report Issues You can post all your feature requests and bug reports on our issue tracker. Reporting Use the following template: * platform version: * Sourcetrail version: * description of the problem: * steps to reproduce the problem: Supporting If you want to support a certain feature request or you have the same bug that another user already reported, please let us know: * post a comment with "+1" to the issue * or send an email to support@sourcetrail.com with the issue ID How to Contribute * Please read and follow the steps in CONTRIBUTING.md file. * You may want to look out for issues labeled good first issue to find some initial tasks to tackle. * If you are looking for more information about Sourcetrail software development, please refer to our wiki. How to Build Building Sourcetrail requires several dependencies to be in place on your machine. However, our CMake based setup allows to disable indexing support for specific languages which reduces the number of dependencies to a minimum. Building the Base Application Required Tools * CMake v3.12 (required for Windows, Linux and MacOS) + Reason: Used to generate a build configuration for your build system + Download: https://cmake.org/download * Git (required for Windows, Linux and MacOS) + Reason: Used for version control and to automatically generate the Sourcetrail version number from commits and tags + Download: https://git-scm.com/download + Remarks: Make sure git is added to your PATH environment variable before running CMake * Visual Studio (required for Windows) + Reason: Used for building Sourcetrail + Download: https://visualstudio.microsoft.com/downloads/ * ccache (optional for Linux and MacOS) + Reason: Used to speed up rebuilds if found in PATH + Download: https://ccache.dev/download.html Required dependencies * Boost 1.67 + Reason: Used for file system access and interprocess communication + Prebuilt Download for Windows: https://sourceforge.net/ projects/boost/files/boost-binaries/ + Building for Unix: $ ./bootstrap.sh --with-libraries=filesystem,program_options,system,date_time $ ./b2 --link=static --variant=release --threading=multi --runtime-link=static --cxxflags=-fPIC * Qt 5.12.3 + Reason: Used for rendering the GUI and for starting additional (indexer) processes. + Prebuilt Download: http://download.qt.io/official_releases/qt / Building On Windows * To set up your build environment run: $ git clone https://github.com/CoatiSoftware/Sourcetrail.git $ cd Sourcetrail $ mkdir -p build/win64 $ cd build/win64 $ cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT= -DQt5_DIR= ../.. Hint: If you are using the CMake GUI, we recommend that you activate advanced mode. Also you may be required to add some of the defines via the "Add Entry" button. * After generating the build configuration, just open the Sourcetrail.sln file that was generated by CMake and build the Sourcetrail project. On Unix * To set up your build environment run: $ cd Sourcetrail $ mkdir -p build/Release $ cd build/Release $ cmake -DCMAKE_BUILD_TYPE="Release" -DBOOST_ROOT= -DQt5_DIR= ../.. * Now start the build with: $ make Sourcetrail Running * Run Sourcetrail from within the build directory. During execution Sourcetrail needs resources from bin/app/data and bin/app/user. CMake creates symlinks within the build directory that make these directories accessible. Enable C/C++ Language Support Required dependencies * LLVM/Clang 11.0.0 + Reason: Used for running the preprocessor on the indexedes source code, building and traversing an Abstract Syntax Tree and generating error messages. + Building: Make sure to check out the correct tag: git checkout llvmorg-11.0.0 + Building for Windows: Follow these steps to build the project. Run the cmake command exactly as described. + Building for Unix: Follow this installation guide to build the project. Make sure to build with -DLLVM_ENABLE_RTTI=ON. Building * Run CMake with these additional options: -DClang_DIR=/lib/cmake/clang -DBUILD_CXX_LANGUAGE_PACKAGE=ON * Build Sourcetrail as described above. Enable Java Language Support Required dependencies * JDK 1.8 + Reason: Used to build the Java indexer and make it callable from the C++ code via JNI. + Remarks: Make sure that /bin is available in your PATH environmen variable and that the JAVA_HOME environment variable is set: JAVA_HOME=/jdk1.x.x_xxx * Maven + REASON: Used within Sourcetrail's automated tests. + Remarks: Make sure .../apache-maven-x.x.x/bin is available in your PATH environmen variable and that both M2_HOME and MAVEN_HOME environment variables are set: M2_HOME=.../apache-maven-x.x.x MAVEN_HOME=.../apache-maven-x.x.x Building * Run CMake with these additional options: -DBUILD_JAVA_LANGUAGE_PACKAGE=ON * Build Sourcetrail as described above. Enable Python Language Support Required Tools * 7z (required for Windows) + REASON: Used to extract the prebuilt SourcetrailPythonIndexer which is downloaded automatically during build execution. Building * Run CMake with these additional options: -DBUILD_PYTHON_LANGUAGE_PACKAGE=ON * Build Sourcetrail as described above. Creating the deployment Package Windows Required Tools * Visual Studio (required for Windows) + Reason: Used for building the Sourcetrail Windows installer. + Remarks: Make sure to install the .Net desktop development workload. + Download: https://visualstudio.microsoft.com/downloads/ * Wix 3.11 + Reason: Used to build the sourcetrail.msi Windows installer. + Remarks: Make sure to add /WiX Toolset v3.11/bin to your PATH environment variable. + Download: https://wixtoolset.org/releases/ * Wix extension for Visual Studio + Reason: Used to run Wix from the Visual Studio build environment. + Download: https://marketplace.visualstudio.com/items?itemName =WixToolset.WixToolsetVisualStudio2017Extension * JRE + Reason: Used for indexing the java sample project that ships with the package. * WinRAR + Reason: Used for creating the final zip files for the installer and the portable package. + Remarks: Make sure to add /WinRAR to your PATH environment variable. Building * Run ./script/deploy_windows.sh from your Developer Command Prompt for Visual Studio. The script which will generate a 64bit build and packages it into a portable .zip file and a Wix-based Windows installer, each. macOS After building, run the bundle_install.sh script within the build directory which will create a Sourcetrail.app bundle and generate a Sourcetrail_.dmg container. Linux Run ./setup/Linux/createPackages.sh from the main directory, which creates both a .tar.gz and a .AppImage package in the main directory. Packaging depends on linuxdeployqt. How to Run the Tests The automated test suite of Sourcetrail is powered by Catch2. To run the tests, simply execute the Sourcetrail_test binary. Before executing, please make sure to set the working directory to ./bin/ test. License Sourcetrail is licensed under the GNU General Public License Version 3. Trademark The "Sourcetrail" name is a trademark owned by Coati Software and is not included within the assets licensed under the GNU GPLv3. About Sourcetrail - free and open-source interactive source explorer www.sourcetrail.com/ Topics python c java cpp Resources Readme License GPL-3.0 License Releases 50 Sourcetrail 2020.4.35 Latest Jan 6, 2021 + 49 releases Sponsor this project * patreon patreon.com/sourcetrail Packages 0 No packages published Contributors 30 * @egraether * @mlangkabel * @st4ll1 * @jubalh * @andronov-alexey * @LouisStAmour * @Waqar144 * @TTimo * @technateNG * @fsimonis + 19 contributors Languages * C++ 63.5% * Java 32.6% * CMake 1.6% * Shell 1.1% * CSS 0.6% * C 0.2% * Other 0.4% * (c) 2021 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.