Skip to content
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

Unable to build with latest vcglib #188

Closed
bartoszek opened this issue Jul 31, 2017 · 10 comments
Closed

Unable to build with latest vcglib #188

bartoszek opened this issue Jul 31, 2017 · 10 comments

Comments

@bartoszek
Copy link
Contributor

bartoszek commented Jul 31, 2017

align plugin doesn't follow lates changes in vcglib
build error shows:

meshtree.cpp:255:103: error: call to ‘bool vcg::AlignGlobal::GlobalAlign(const std::map<int, std::__cxx11::basic_string<char> >&, double, int, bool, FILE*, int*)’ uses the default argument for pa
rameter 6, which is not yet defined
  while(!AG.GlobalAlign(names,  StartGlobErr, 100, ap.MatchMode==vcg::AlignPair::Param::MMRigid, stdout)){

Looks like align plugin uses older definition of CallBack instead of CallBackPos...

@alexws54tk
Copy link

While compiling this on Linux as in pull #68, common/common.pro, meshlab_mini.pro and meshlab_full.pro builds failed with same errors:

% grep -B3 -A1 "error:" build.log

In file included from meshlabdocumentbundler.h:4:0,
                 from meshlabdocumentbundler.cpp:11:
../../../vcglib/wrap/io_trimesh/import_out.h: In static member function ‘static bool vcg::tri::io::ImporterOUT<OpenMeshType>::ReadHeader(const char*, unsigned int&, unsigned int&)’:
../../../vcglib/wrap/io_trimesh/import_out.h:91:18: error: no matching function for call to ‘vcg::tri::io::ImporterOUT<OpenMeshType>::ReadHeader(FILE*&)’
     ReadHeader(fp);
                  ^
…
In file included from meshlabdocumentbundler.h:5:0,
                 from meshlabdocumentbundler.cpp:11:
../../../vcglib/wrap/io_trimesh/import_nvm.h: In static member function ‘static bool vcg::tri::io::ImporterNVM<OpenMeshType>::ReadHeader(const char*, unsigned int&, unsigned int&)’:
../../../vcglib/wrap/io_trimesh/import_nvm.h:91:18: error: no matching function for call to ‘vcg::tri::io::ImporterNVM<OpenMeshType>::ReadHeader(FILE*&)’
     ReadHeader(fp);
                  ^

% grep -rn " ReadHeader(" /path/to/project/dir/*

vcglib/wrap/io_trimesh/import_out.h:88:static bool ReadHeader(const char * filename,unsigned int &/*num_cams*/, unsigned int &/*num_points*/){
vcglib/wrap/io_trimesh/import_out.h:91:    ReadHeader(fp);
vcglib/wrap/io_trimesh/import_out.h:106:  ReadHeader(fp, num_cams,  num_points);
vcglib/wrap/io_trimesh/import_nvm.h:78:static bool ReadHeader(FILE *fp,unsigned int &num_cams){
vcglib/wrap/io_trimesh/import_nvm.h:88:static bool ReadHeader(const char * filename,unsigned int &/*num_cams*/, unsigned int &/*num_points*/){
vcglib/wrap/io_trimesh/import_nvm.h:91:    ReadHeader(fp);
vcglib/wrap/io_trimesh/import_nvm.h:105:  ReadHeader(fp, num_cams);

Request to fix it.

@alexjarosch
Copy link

Hi all,

same problem here with me. Just cloned the latest repos for meshlab and vcglib and switched the vcglib to 'devel' branch.

However i get the exact same error as alexws54tk above.

Any idea how to fix this?

@alexjarosch
Copy link

I've been checking how the gentoo guys deal with this and there is a patch available, which basically just removes the problem.
The patch can be found here: https://data.gpo.zugaina.org/gentoo/media-gfx/meshlab/files/2016.12/meshlab-2016.12-remove-header.patch
I applied it and managed to compile the whole meshlab_full setup. Now I test the built.

Suggest to look into the patch to fix the issue.

@richfelker
Copy link

Ping. This problem is still present and the patch in @alexjarosch's comment above still seems to bypass it.

@bartoszek
Copy link
Contributor Author

bartoszek commented Apr 15, 2019

If your dirsto provides vcg>1.0.1 I think you should drop meshlab=2016.12 and switch to b2019.12 🤔

@infinitesnow
Copy link

@bartoszek using the latest version on meshlab's master and vcg's devel the problem persists; the patch provided by @alexjarosch fixes it. Running Debian bullseye

@richfelker
Copy link

I'm using git master from Jan 29 2019, not 2016.12, but before I ripped out the phone-home functionality for version check, it kept complaining that 2016.12 was outdated and it wasn't clear why.

@zgxsin
Copy link

zgxsin commented Jul 16, 2019

I've been checking how the gentoo guys deal with this and there is a patch available, which basically just removes the problem.
The patch can be found here: https://data.gpo.zugaina.org/gentoo/media-gfx/meshlab/files/2016.12/meshlab-2016.12-remove-header.patch
I applied it and managed to compile the whole meshlab_full setup. Now I test the built.

Suggest to look into the patch to fix the issue.

I have followed the patch to fix it. However, i encountered a new error:

g++: error: ../meshlab/src/meshlabplugins/io_3ds/../../external/lib/linux-g++/lib3ds.a: No such file or directory
Makefile:166: recipe for target '../../distrib/plugins/libio_3ds.so' failed
make[1]: *** [../../distrib/plugins/libio_3ds.so] Error 1
Makefile:239: recipe for target 'sub-meshlabplugins-io_3ds-make_first-ordered' failed
make: *** [sub-meshlabplugins-io_3ds-make_first-ordered] Error 2

Any idea?

@infinitesnow
Copy link

infinitesnow commented Jul 16, 2019 via email

@zgxsin
Copy link

zgxsin commented Jul 16, 2019

Yes, you have to link lib3ds.a it from Linux to linux-g++. See #285

On Tue, Jul 16, 2019, 1:26 PM zgxsin @.***> wrote: I've been checking how the gentoo guys deal with this and there is a patch available, which basically just removes the problem. The patch can be found here: https://data.gpo.zugaina.org/gentoo/media-gfx/meshlab/files/2016.12/meshlab-2016.12-remove-header.patch I applied it and managed to compile the whole meshlab_full setup. Now I test the built. Suggest to look into the patch to fix the issue. I have followed the patch to fix it. However, i encountered a new error: g++: error: ../meshlab/src/meshlabplugins/io_3ds/../../external/lib/linux-g++/lib3ds.a: No such file or directory Makefile:166: recipe for target '../../distrib/plugins/libio_3ds.so' failed make[1]: *** [../../distrib/plugins/libio_3ds.so] Error 1 Makefile:239: recipe for target 'sub-meshlabplugins-io_3ds-make_first-ordered' failed make: *** [sub-meshlabplugins-io_3ds-make_first-ordered] Error 2 Any idea? — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#188?email_source=notifications&email_token=ACDKTYIXNIBGYXNDUWL57PTP7WV4XA5CNFSM4DVAFXZ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2ARORA#issuecomment-511776580>, or mute the thread https://github.com/notifications/unsubscribe-auth/ACDKTYJSX2MGOTHWSLNJOO3P7WV4XANCNFSM4DVAFXZQ .

Thank you! Problem solved!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants