mirror of https://github.com/WerWolv/ImHex.git
Merge pull request #53 from umarcor/deps
create subdir 'dist', update compiling guidelines
This commit is contained in:
commit
b3645ec945
44
README.md
44
README.md
|
@ -85,38 +85,37 @@ For format patterns, includable libraries and magic files, check of the [ImHex-P
|
||||||
|
|
||||||
## Compiling
|
## Compiling
|
||||||
|
|
||||||
This guide assumes you're either on Windows using mingw or on Arch Linux
|
You need a C++20 compatible compiler such as GCC 10.2.0 to compile ImHex. Moreover, The following dependencies are needed for compiling ImHex:
|
||||||
|
|
||||||
You need a C++20 compatible compiler such as GCC 10.2.0 to compile ImHex.
|
- GLFW3
|
||||||
The following libraries are needed to compile ImHex. All of them can be found in the default pacman repositories
|
- libmagic, libgnurx, libtre, libintl, libiconv
|
||||||
```
|
- libcrypto
|
||||||
GLFW3 ( (sudo) pacman -S glfw )
|
- capstone
|
||||||
libmagic, libgnurx, libtre, libintl, libiconv ( (sudo) pacman -S file )
|
- libLLVMDemangle
|
||||||
libcrypto ( (sudo) pacman -S openssl )
|
- nlohmann json
|
||||||
capstone ( (sudo) pacman -S capstone )
|
- Python3
|
||||||
libLLVMDemangle ( (sudo) pacman -S llvm llvm-libs )
|
|
||||||
nlohmann json ( (sudo) pacman -S nlohmann-json )
|
|
||||||
Python3 ( (sudo) pacman -S python3 )
|
|
||||||
|
|
||||||
All in one for Arch Linux: sudo pacman -S glfw file openssl capstone llvm llvm-libs nlohmann-json python3
|
Find all in one dependency installation scripts for Arch Linux, Fedora and/or MSYS2 in [dist](dist).
|
||||||
All in one for Fedora: sudo dnf install cmake gcc-c++ capstone-devel glfw-devel glm-devel json-devel llvm-devel mesa-libGL-devel openssl-devel python-devel
|
|
||||||
All in one for MinGW: pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-make mingw-w64-x86_64-capstone mingw-w64-x86_64-glfw mingw-w64-x86_64-glm mingw-w64-x86_64-file mingw-w64-x86_64-llvm mingw-w64-x86_64-nlohmann-json mingw-w64-x86_64-openssl mingw-w64-x86_64-polly mingw-w64-x86_64-pytho
|
|
||||||
```
|
|
||||||
|
|
||||||
After all the libraries are installed, run the following commands to build ImHex
|
After all the dependencies are installed, run the following commands to build ImHex:
|
||||||
```
|
|
||||||
|
```sh
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
cmake ..
|
cmake ..
|
||||||
make -j
|
make -j
|
||||||
```
|
```
|
||||||
|
|
||||||
On Windows, download the python standard library from https://github.com/python/cpython/tree/master/Lib and place the files and folders in `lib/python3.8` next to your built executable. Don't forget to also copy the `libpython3.8.dll` and `libwinpthread-1.dll` from your mingw setup next to the executable.
|
---
|
||||||
|
|
||||||
On both Windows and Linux, copy the files from `python_libs` in the `lib` folder next to your built executable.
|
To create a standalone zipfile on Windows, get the Python standard library (e.g. from https://github.com/python/cpython/tree/master/Lib) and place the files and folders in `lib/python3.8` next to your built executable. Don't forget to also copy the `libpython3.8.dll` and `libwinpthread-1.dll` from your mingw setup next to the executable.
|
||||||
Place your magic databases in the `magic` folder next to your built executable
|
|
||||||
Place your patterns in the `pattern` folder next to your built executable
|
On both Windows and Linux:
|
||||||
Place your include pattern files in the `include` folder next to your built executable
|
|
||||||
|
- Copy the files from `python_libs` in the `lib` folder next to your built executable.
|
||||||
|
- Place your magic databases in the `magic` folder next to your built executable
|
||||||
|
- Place your patterns in the `pattern` folder next to your built executable
|
||||||
|
- Place your include pattern files in the `include` folder next to your built executable
|
||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
|
|
||||||
|
@ -126,4 +125,3 @@ Place your include pattern files in the `include` folder next to your built exec
|
||||||
- Thanks to AirGuanZ for their amazing [imgui-filebrowser](https://github.com/AirGuanZ/imgui-filebrowser) used for loading and saving files
|
- Thanks to AirGuanZ for their amazing [imgui-filebrowser](https://github.com/AirGuanZ/imgui-filebrowser) used for loading and saving files
|
||||||
- Thanks to nlohmann for their [json](https://github.com/nlohmann/json) library used for project files
|
- Thanks to nlohmann for their [json](https://github.com/nlohmann/json) library used for project files
|
||||||
- Thanks to aquynh for [capstone](https://github.com/aquynh/capstone) which is the base of the disassembly window
|
- Thanks to aquynh for [capstone](https://github.com/aquynh/capstone) which is the base of the disassembly window
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
pacman -S \
|
||||||
|
glfw \
|
||||||
|
file \
|
||||||
|
openssl \
|
||||||
|
capstone \
|
||||||
|
llvm \
|
||||||
|
llvm-libs \
|
||||||
|
nlohmann-json \
|
||||||
|
python3
|
|
@ -0,0 +1,13 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
dnf install \
|
||||||
|
cmake \
|
||||||
|
gcc-c++ \
|
||||||
|
capstone-devel \
|
||||||
|
glfw-devel \
|
||||||
|
glm-devel \
|
||||||
|
json-devel \
|
||||||
|
llvm-devel \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
openssl-devel \
|
||||||
|
python-devel
|
|
@ -0,0 +1,15 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
pacman -S \
|
||||||
|
mingw-w64-x86_64-gcc \
|
||||||
|
mingw-w64-x86_64-cmake \
|
||||||
|
mingw-w64-x86_64-make \
|
||||||
|
mingw-w64-x86_64-capstone \
|
||||||
|
mingw-w64-x86_64-glfw \
|
||||||
|
mingw-w64-x86_64-glm \
|
||||||
|
mingw-w64-x86_64-file \
|
||||||
|
mingw-w64-x86_64-llvm \
|
||||||
|
mingw-w64-x86_64-nlohmann-json \
|
||||||
|
mingw-w64-x86_64-openssl \
|
||||||
|
mingw-w64-x86_64-polly \
|
||||||
|
mingw-w64-x86_64-python
|
Loading…
Reference in New Issue