New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem with the provided libmpir.a? #74
Comments
Likely that your compiler differs from the standard one, thus you need to compile libmpir on your own. For more details see issue #47 |
Agree, while for targeted osx releases it make sense to have binaries of libs, for linux it does not. We definitely need someone fully dedicated to maintain the linux distribution. |
I just put together a small BASH script to make Meshlab 2016.12 on Linux Ubuntu distribution. I had issues with io_txt, mpir and plugins. Thus, I included all the issues and their fixes in the code. Tested on Ubuntu 14.04.5 64-bit with gcc-4.9. You are welcome to include this if you consider it worthy. QT57_exec=<path-to-your-qt5.7-qmake> 1. vcglibgit clone https://github.com/cnr-isti-vclab/vcglib.git 2. meshlabgit clone https://github.com/cnr-isti-vclab/meshlab.git 3. now fix mpir issuecd ../../../ # get out of the folder 4. now compile meshlabcd ../meshlab/src poisson filter enable (#44)cp meshlabplugins/filter_measure/filter_measure.xml distrib/plugins/ |
Thank you very much! I'll try this out on my 2 linux distributions (Debian and PCLinuxOS) at the earliest opportunity (next week) and report back. |
Well, this does, in fact, work. Compiling the meshlab externals worked fine but then could not at first compile mpir. After replacing ./mpir-2.4.0/mpn/generic/preinv_divrem_1.c with ./mpir-2.4.0/tune/preinv_divrem_1.c, mpir compiled OK and created the needed .a and .h files, which I copied as described in step 3. In step 4, "mv plugins_experimental/io_TXT plugins_experimental/io_txt" failed due to file not found, so I skipped it and proceeded with step 4 and on through the following "poisson filter enable" steps to the make, which succeeded and generated a working Meshlab executable in Linux! I will compare it to the windows version to check functionality and plugins, etc. One other thing - during my initial attempt to compile 2 weeks ago, there were four functions in a switch which were failing. For expediency and without trying to solve the problem, I simply changed the cases to execute functions that compiled. In /meshlab/src/meshlabplugins/filter_meshing/meshfilter.cpp Original code starting at line 1242:
} My altered version: Thanks again! Steve |
Probably your compiling failure was due to using an updated version of the meshlab repo with a non-up-to-date version of the vcglib (devel branch) repo. |
My vcglib version and meshlab versions are up-to-date. I still get the following errors but I think I have found the cause:
and
================================================================= As best I can figure it out, appears that the errors generated by line 856 in meshfilter.cpp are due to an improper name for the class member. Meshfilter.cpp calls for "BoundaryQuadraticWeight". Regarding the second set of errors for cases 2,3,4,5 in the switch, thhe functions: are missing from vcglib/vcg/complex/algorithms/update/quality.h . The functions called in cases 0,1, and 6. (VertexFromMeanCurvatureDir, VertexFromGaussianCurvatureDir, VertexConstant) are present. I presume that the missing functions belong also in quality.h (?) |
Compiling meshlab_full results in an abort with link failure and this message:
error: ../../../src/external/lib/linux-g++/libmpir.a(lt4-clear.o): unrecognized relocation (0x2a) in section `.text'
The text was updated successfully, but these errors were encountered: