Hoennwalker
Profesional de WaH
Buenas,
Sé que estáis muy cómodos con vuestro porymap... Sin embargo, también sé que no os termina de convencer, ya que el proyecto está en la partición de Linux, porymap en Windows, y no nos queda del todo bien ordenadito. Así que, vamos a compilar porymap mediante WSL2, que así de paso tendremos velocidad de lectura y escritura máxima, no sé...
Desconozco desde qué versión de ubuntu se puede hacer esto, por lo que sería interesante que instaléis la versión más reciente. Esto no es actualizar WSL, es crear otra partición con otro ubuntu distinto.
Para la compilación vamos a necesitar Qt6 del package manager y g++.
Qt6 package manager:
Ahora tenemos que instalar dos librerías que nos hacen falta adicionalmente:
G++:
Que lo vamos a necesitar para compilar C, C++ y para poder compilar con "make -j$(nproc)".
Ya tenemos las herramientas, ahora nos bajamos el repositorio de porymap en la carpeta que quieras dentro de la partición de Linux. Para organizar todo lo relacionado con decompilación no estaría mal si te creas una carpeta "decompilacion".
Lo que nos interesa es compilar la versión estable, así que vamos a seleccionar también la última versión:
Ahora vamos bajando con la flecha del teclado hasta encontrar la última versión, a día de hoy 6.2.0, y la seleccionamos de la siguiente manera:
Ahora vamos a crear una carpeta build. Esto lo hacemos porque al crear precisamente la build, se generan una burrada de archivos y así los metemos todos ahí, que queda más ordenado. Y entramos en build:
Vamos con la creación de la build:
Eso hace qmake en /porymap y los archivos los mete en /porymap/build.
Y ahora para crear el ejecutable:
Finalmente podemos ejecutar porymap:
Ahora vamos a configurar WSL para que use tu tarjeta gráfica de alto rendimiento. Para ello en el directorio de linux ve a esta ruta:
El archivo .bashrc, ábrelo y añade estas 3 líneas abajo del todo.
Con esto lo que hemos hecho es que WSLg use siempre la tarjeta gráfica de alto rendimiento y con ello tienes plena velocidad.
Ahora vamos a agregar porymap al PATH. Esto lo hacemos por comodidad, para no tener que acceder siempre a la ruta donde está porymap y ejecutarlo. Para ello, en el mismo fichero que hemos editado antes añades otra fila más.
A partir de ahora puedes abrirlo solamente con "porymap" ya no es necesario "./porymap". Pero puede que te hayas dado cuenta de que tanto antes como ahora, que el terminal queda digamos ocupado por la ejecución del porymap y no puedes meter comandos. Simplemente lo arreglamos ejecutando porymap en segundo plano y descartando los logs, de esta forma podríamos ir compilando todos los cambios que vayamos aplicando.
Sé que estáis muy cómodos con vuestro porymap... Sin embargo, también sé que no os termina de convencer, ya que el proyecto está en la partición de Linux, porymap en Windows, y no nos queda del todo bien ordenadito. Así que, vamos a compilar porymap mediante WSL2, que así de paso tendremos velocidad de lectura y escritura máxima, no sé...
Desconozco desde qué versión de ubuntu se puede hacer esto, por lo que sería interesante que instaléis la versión más reciente. Esto no es actualizar WSL, es crear otra partición con otro ubuntu distinto.
Para la compilación vamos a necesitar Qt6 del package manager y g++.
Qt6 package manager:
Código:
sudo apt update
sudo apt install qt6-base-dev -y
Ahora tenemos que instalar dos librerías que nos hacen falta adicionalmente:
Código:
sudo apt install qt6-base-dev qt6-declarative-dev qt6-charts-dev -y
G++:
Que lo vamos a necesitar para compilar C, C++ y para poder compilar con "make -j$(nproc)".
Código:
sudo apt update
sudo apt install build-essential -y
Ya tenemos las herramientas, ahora nos bajamos el repositorio de porymap en la carpeta que quieras dentro de la partición de Linux. Para organizar todo lo relacionado con decompilación no estaría mal si te creas una carpeta "decompilacion".
Código:
mkdir -p decompilacion
cd ~/decompilacion
git clone https://github.com/huderlem/porymap.git
Lo que nos interesa es compilar la versión estable, así que vamos a seleccionar también la última versión:
Código:
cd porymap
git tag
Ahora vamos bajando con la flecha del teclado hasta encontrar la última versión, a día de hoy 6.2.0, y la seleccionamos de la siguiente manera:
Código:
git checkout 6.2.0
Ahora vamos a crear una carpeta build. Esto lo hacemos porque al crear precisamente la build, se generan una burrada de archivos y así los metemos todos ahí, que queda más ordenado. Y entramos en build:
Código:
mkdir -p build
cd build
Vamos con la creación de la build:
Código:
qmake6 ../porymap.pro -r
Y ahora para crear el ejecutable:
Código:
make -j$(nproc)
Finalmente podemos ejecutar porymap:
Código:
./porymap
Ahora vamos a configurar WSL para que use tu tarjeta gráfica de alto rendimiento. Para ello en el directorio de linux ve a esta ruta:
Código:
\\wsl.localhost\Ubuntu-24.04\home\tu_nombre
El archivo .bashrc, ábrelo y añade estas 3 líneas abajo del todo.
Código:
export MESA_LOADER_DRIVER_OVERRIDE=d3d12
export GALLIUM_DRIVER=d3d12
export MESA_D3D12_DEFAULT_ADAPTER_NAME=NVIDIA (o AMD, según tu gráfica)
Ahora vamos a agregar porymap al PATH. Esto lo hacemos por comodidad, para no tener que acceder siempre a la ruta donde está porymap y ejecutarlo. Para ello, en el mismo fichero que hemos editado antes añades otra fila más.
Código:
export PATH="$PATH:/home/tu_nombre/decompilacion/porymap/build"
A partir de ahora puedes abrirlo solamente con "porymap" ya no es necesario "./porymap". Pero puede que te hayas dado cuenta de que tanto antes como ahora, que el terminal queda digamos ocupado por la ejecución del porymap y no puedes meter comandos. Simplemente lo arreglamos ejecutando porymap en segundo plano y descartando los logs, de esta forma podríamos ir compilando todos los cambios que vayamos aplicando.
Código:
porymap >/dev/null 2>&1 &
Última edición: