some readme modifies and install folder reorganization

This commit is contained in:
alemuntoni 2020-01-28 18:17:54 +01:00
parent b29481d46b
commit 08e390dce6
18 changed files with 20 additions and 183 deletions

View File

@ -20,7 +20,7 @@ MeshLab requires [Qt](https://www.qt.io/) >= 5.9, with `script` and `xmlpatterns
After setting up the Qt environment:
git clone --recursive https://github.com/cnr-isti-vclab/meshlab
cd src
cd meshlab/src
qmake
make

View File

@ -0,0 +1,8 @@
# distrib folder
The distrib folder contains a set of pre-built libraries, plugins, shaders and textures that MeshLab needs to properly run.
Running `qmake && make` from the `src` folder of the repo, MeshLab binaries, plugins and libraries will be placed automatically in this folder.
If instead a shadow build is set, the `distrib` folder will be automatically copied inside the selected build directory, and it will contain also binaries, plugins and libraries.
After building MeshLab, the `distrib` directory will **not** contain a portable version of MeshLab, since it won't contain all the Qt's libraries needed by MeshLab. In order to deploy MeshLab, see the `install` directory.

View File

@ -1,7 +1,14 @@
Windows:
# install folder
**Work in Progress**
MacOS
After a full rebuild of meshlab_full.pro run the macinstall_v2016.sh script. It generate a relocable app folder. To build the dmg, install appdmg and use the following command line:
This folder contains a series of platform-dependent scripts to build and deploy meshlab.
appdmg meshlab_dmg.json ../distrib/MeshLab2016.12.dmg
Every platform folder contains:
* `$platform$-build.[sh/ps1]`: a script that builds MeshLab. Requires a Qt environment properly set, with `qmake` accessible. The build will be placed inside the directory passed as an argument, or in the `distrib` folder if arguments were not provided.
* `$platform$-deploy.[sh/ps1]`: a script that deploys MeshLab, making sure that the folder will be a self-contained MeshLab, without Qt library dependencies. Requires a properly built MeshLab in the directory passed as an argument, or in the `distrib` folder if arguments were not provided.
* `$platform$-install.[sh/ps1]`: a script that computes a self-contained package/installer of MeshLab. Requires a properly deployed MeshLab in the directory passed as an argument, or in the `distrib` folder if arguments were not provided. The result will be saved in the same directory.
* `$platform$-make_it.[sh/ps1]`: a script that computes all the three previous scripts: starting from the source code, it will produce a self-contained package/installer of MeshLab.
See in each platform subfolder if there are some other platform-dependent requirements.

View File

@ -1,12 +0,0 @@
#!/bin/bash
# this is a script shell for building a tar archive of all the sources needed to build a running version of the meshlab.
# it should be run in the directory containing the sf meshlab and code directories.
# so your command line should be something like: source meshlab/src/install/build_src_archive.sh
# when the script ends you should have a tgz with all the needed sources
#
cp meshlab/src/install/building_meshlab.txt ./how_to_compile.txt
find meshlab vcglib ./how_to_compile.txt | egrep -v -e SVN -e /ui_ -e build -e /moc_ -e /php -e meshlabv11.pro -e /qrc_ -e /test/ -e MeshLabBundle -e docs/ -e /web/ -e\# | egrep -e [.]cpp$ -e [.]c$ -e [.]h$ -e [.]tpp$ -e [.]pro$ -e [.]pri$ -e [.]ui$ -e [.]png$ -e [.]rc$ -e [.]qrc$ -e [.]vert$ -e [.]frag$ -e [.]rfx$ -e [.]glsl$ -e [.]gdp$ -e [.]txt$ -e [.]vs$ -e [.]fs$ -e [.]rendertemplate$ -e.xsd$ -e.js$ -e [.]icns$ -e [.]xml$ -e Qt -e images/100mesh.html -e images/eye.ico -e images/facebook.gif -e [.]inl$ -e eigenlib/* > list.txt
echo "meshlab/src/fgt/edit_topo/edit_topomeshbuilder.h" >> list.txt
#
tar -c -v -z -T ./list.txt -f MeshLabSrc_AllInc_v132_`date +"%Y%m%d"`.tgz
eg

View File

@ -1,38 +0,0 @@
#!/bin/sh
DATE=$(date --rfc-3339=date)
MLABURL=https://meshlab.svn.sourceforge.net/svnroot/meshlab/trunk
VCGURL=https://vcg.svn.sourceforge.net/svnroot/vcg/trunk
MLABREV=$(svn info ${MLABURL} | sed -n 's/^Revision:[ ]*\([0-9]*\)/\1/p')
TMP=/tmp
MLABARCH=meshlab-snapshot-svn${MLABREV}
LIBARCH=meshlab-externals-svn${MLABREV}
MLABDIR=$1
LIBDIR=$LIBARCH
CURDIR=$(pwd)
mkdir -p $TMP/$MLABDIR
svn export --force $MLABURL $TMP/$MLABDIR
svn export --force $VCGURL $TMP/$MLABDIR
cd $TMP/$MLABDIR
mv meshlab/src/external $TMP/$LIBDIR/meshlab/src
rm -rf CVSROOT meshlab/web meshlab/src/old meshlab/src/sample meshlab/src/meshlabplugins/edit_phototexturing meshlab/src/meshlab/textures meshlab/src/meshlab/plugins/U3D_OSX meshlab/src/meshlab/plugins/U3D_W32 meshlab/src/external
mkdir -p meshlab/src/meshlab/plugins/U3D_W32
mkdir -p meshlab/src/meshlab/plugins/U3D_OSX
mkdir -p meshlab/src/external
mkdir -p $TMP/$LIBDIR/meshlab/src
rm -rf vcglib/docs
rm -rf vcglib/apps/gcc_make vcglib/apps/msvc vcglib/apps/test
mkdir -p $TMP/$LIBDIR/vcglib/vcg
mv vcglib/vcg/Eigen $TMP/$LIBDIR/vcglib/vcg
cd ..
tar -zcf $CURDIR/$MLABARCH.tar.gz $MLABDIR
tar -zcf $CURDIR/$LIBARCH.tar.gz $LIBDIR
rm -rdf $TMP/$MLABDIR
cd $CURDIR

View File

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Type=Application
Name=MeshLab
Comment=Processor and editor of large 3D triangular meshes
Exec=meshlab
Terminal=false
Categories=Graphics;
Icon=meshlab.png

View File

@ -1,31 +0,0 @@
Snap is a cross-distribution packaging format for Linux. See
https://snapcraft.io for more information.
How to build
------------
Just type
```
snapcraft
```
from the directory containing this README file. This snap has been successfully
built in Ubuntu 17.04; Ubuntu 16.10 will not work because MeshLab needs Qt 5.7,
which is not available there. It should be possible to build MeshLab as a snap
in older Ubuntu distributions by using the [qt57
part](https://wiki.ubuntu.com/snapcraft/parts), but no efforts have been taken
in this direction since anyway the generated snap package will work on older
distributions too.
How to test the snap
--------------------
The generated snap can be installed by typing
```
snap install --dangerous ./meshlab*.snap
```
The `--dangerous` flag is needed because the snap has not been verified by the
store.
How to upload the snap to the store
-----------------------------------
A thorough guide can be found at the [snapcraft.io
site](https://snapcraft.io/docs/build-snaps/publish).

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Type=Application
Name=meshlabserver
Comment=Processor and editor of large 3D triangular meshes
Exec=meshlab.meshlabserver
Terminal=true
Categories=Graphics;
Icon=${SNAP}/meta/gui/meshlab.png

View File

@ -1,70 +0,0 @@
# Known to build in Ubuntu 17.04
name: meshlab
version: '2016.12-2'
summary: MeshLab
description: |
The open source system for processing and editing 3D triangular meshes.
It provides a set of tools for editing, cleaning, healing, inspecting,
rendering, texturing and converting meshes. It offers features for processing
raw data produced by 3D digitization tools/devices and for preparing models
for 3D printing.
icon: snap/gui/meshlab.png
grade: stable
confinement: strict
apps:
meshlab:
command: desktop-launch meshlab
plugs: [home, x11, mir, opengl, unity7]
meshlabserver:
command: desktop-launch meshlabserver
plugs: [home, x11, opengl, unity7]
parts:
meshlab:
after: [desktop-qt5,vcglib]
plugin: qmake
qt-version: qt5
source: https://github.com/cnr-isti-vclab/meshlab.git
source-tag: v2016.12
build-packages:
- libqt5opengl5-dev
- libqt5xmlpatterns5-dev
- qt5-default
- qtscript5-dev
prepare: |
ln -sf ../vcglib/install ../vcglib
sed -i '/filter_csg/d' src/meshlab_full.pro
sed -i '/plugins_experimental\/io_TXT/d' src/meshlab_full.pro
sed -i 's| abs(| qAbs(|' src/meshlabplugins/edit_quality/eqhandle.cpp
sed -i -e '2ilinux:QMAKE_LFLAGS += -fopenmp -lgomp\' src/meshlabplugins/filter_screened_poisson/filter_screened_poisson.pro
sed -i 's|PR_XXXXXX|/tmp/PR_XXXXXX|' src/meshlabplugins/filter_screened_poisson/Src/Geometry.cpp
build: |
rm -f -r src/distrib/plugins/U3D_OSX
rm -f -r src/distrib/plugins/U3D_W32
cd src/external
qmake external.pro
make -j4
cd ..
qmake meshlab_full.pro
make -j4
install: |
cp src/meshlabplugins/filter_screened_poisson/filter_screened_poisson.xml \
src/meshlabplugins/filter_mutualinfoxml/filter_mutualinfo.xml \
src/meshlabplugins/filter_measure/filter_measure.xml \
src/distrib/plugins/
rm -f -r src/distrib/plugins/OSX_U3D
rm -f -r src/distrib/plugins/OSX_W32
cd src/distrib
mkdir -p $SNAPCRAFT_PART_INSTALL/bin
cp -a meshlab* plugins shaders textures $SNAPCRAFT_PART_INSTALL/bin
mkdir -p $SNAPCRAFT_PART_INSTALL/lib
cp -a lib* $SNAPCRAFT_PART_INSTALL/lib
vcglib:
plugin: dump
source: https://github.com/cnr-isti-vclab/vcglib.git
source-tag: v1.0.1
prime: [ -* ]

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Type=Application
Name=MeshLab
Comment=Processor and editor of large 3D triangular meshes
Exec=meshlab.meshlab
Terminal=false
Categories=Graphics;
Icon=${SNAP}/meta/gui/meshlab.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB