Giter Club home page Giter Club logo

Comments (20)

jorisv avatar jorisv commented on July 28, 2024 1

Hello @mahdad-es,

Thank for the code. I was able to reproduce the issue and I find the error.

You need to give the /fpermissive- compiler option when building proxsuite on Windows .

I strongly recommend you to not embed the proxsuite source in your project. Instead, install it, find the target with find_package and link your project with it. All the defines needed to build are defined in this target, so you wouldn't have had this problem.

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024 1

Hello @jorisv
I really appreciate your recommendations and kind assistance in this regard. My error has been fixed now.

from proxsuite.

jcarpent avatar jcarpent commented on July 28, 2024

You can deactivate the build of the test with CMake as follows:
cmake . -DBUILD_TESTING=OFF

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

You can deactivate the build of the test with CMake as follows: cmake . -DBUILD_TESTING=OFF

Thank you for your response, i use the proxsuite\include\proxsuite header files in extrernal library of my project ,
during the build of my project i have the similar error in compiling .cpp file with proxsuite header, do you have any suggestion to solve that ,C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\type_traits\constructible.hpp(52,1): error C3546:
'...': there are no parameter packs available to expand [C:\Users\mesmaeil\Documents\nipt-main2\build\nipt.vcxproj]"

You can deactivate the build of the test with CMake as follows: cmake . -DBUILD_TESTING=OFF

from proxsuite.

jcarpent avatar jcarpent commented on July 28, 2024

Could you provide a reproducible set of commands to execute to test on our side?

from proxsuite.

jcarpent avatar jcarpent commented on July 28, 2024

@jorisv Could you follow this issue?

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

@jorisv Could you follow this issue?
I am using the Proxsuite available header files in my project and put all the header files in proxsuite\include\proxsuite in external folder of my project, but I received an error in the compilation and build of my project, which is like to the case when I want the build the proxsuite in MSVC Without turning off cmake. -DBUILD_TESTING=OFF and by only running cmake. And I think that if I can solve this problem, my project will also be solved.
The steps I do in Windows to build and install proxsuite and I get an error are as follows
1-git clone https://github.com/Simple-Robotics/proxsuite.git --recursive
2-mkdir build & cd build
3-cmake..
cmake ..
-- Configuring "proxsuite" (http://github.com/Simple-Robotics/proxsuite)
-- Package version (ROS package.xml): 0.6.1
-- CMAKE_SYSTEM_PROCESSOR: AMD64
-- [Proxsuite] Using C++ standard: 17
-- Configuring done (0.4s)
-- Generating done (1.6s)
-- Build files have been written to: C:/Users/mesmaeil/Downloads/proxsuite
4-cmake –build .
C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\constructible.hpp(52,1): error C3546: '.
..': there are no parameter packs available to expand [C:\Users\mesmaeil\Downloads\proxsuite\test\proxsuite-test-util.v
cxproj]
(compiling source file 'src/util_f64.cpp')
C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\constructible.hpp(52,1):
the template instantiation context (the oldest one first) is
C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\constructible.hpp(56,1):
see reference to class template instantiation 'proxsuite::linalg::veg::concepts::_veg_detail::test_sfinae_inpla
ce_constructible<void,T,Ts...>' being compiled

C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\invocable.hpp(24,1): error C3546: '...':
there are no parameter packs available to expand [C:\Users\mesmaeil\Downloads\proxsuite\test\proxsuite-test-util.vcxpr
oj]
(compiling source file 'src/util_f64.cpp')
C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\invocable.hpp(24,1):
the template instantiation context (the oldest one first) is
C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\invocable.hpp(28,1):
see reference to class template instantiation 'proxsuite::linalg::veg::concepts::_veg_detail::test_sfinae_fn_on
ce<void,Fn,Ret,Args...>' being compiled

C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\invocable.hpp(28,1): error C3546: '...':
there are no parameter packs available to expand [C:\Users\mesmaeil\Downloads\proxsuite\test\proxsuite-test-util.vcxpr
oj]
(compiling source file 'src/util_f64.cpp')

C:\Users\mesmaeil\Downloads\proxsuite\include\proxsuite\linalg\veg\type_traits\invocable.hpp(30,1): error C3546: '...':
there are no parameter packs available to expand [C:\Users\mesmaeil\Downloads\proxsuite\test\proxsuite-test-util.vcxpr
oj]

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Also In Proxsuite when i try to compile and build with cmake .. -DBUILD_BENCHMARK=ON i get the same template error
mkdir build && cd build
cmake .. -DBUILD_BENCHMARK=ON
cmake --build .
similar to above error
"C:\Users\mesmaeil\Documents\proxsuit-m\proxsuite\include\proxsuite\linalg\veg\type_traits\constructible.hpp(52,1): erro
r C3546: '...': there are no parameter packs available to expand [C:\Users\mesmaeil\Documents\proxsuit-m\proxsuite\buil
d\test\proxsuite-test-util.vcxproj]
(compiling source file '../../test/src/util_f64.cpp')
C:\Users\mesmaeil\Documents\proxsuit-m\proxsuite\include\proxsuite\linalg\veg\type_traits\constructible.hpp(52,1):
the template instantiation context (the oldest one first) is
C:\Users\mesmaeil\Documents\proxsuit-m\proxsuite\include\proxsuite\linalg\veg\type_traits\constructible.hpp(56,
1):
see reference to class template instantiation 'proxsuite::linalg::veg::concepts::_veg_detail::test_sfinae_inpla
ce_constructible<void,T,Ts...>' being compiled

C:\Users\mesmaeil\Documents\proxsuit-m\proxsuite\include\proxsuite\linalg\veg\type_traits\invocable.hpp(24,1): error C3
546: '...': there are no parameter packs available to expand [C:\Users\mesmaeil\Documents\proxsuit-m\proxsuite\build\te
st\proxsuite-test-util.vcxproj]
(compiling source file '../../test/src/util_f64.cpp')
"

from proxsuite.

jorisv avatar jorisv commented on July 28, 2024

Hello @mahdad-es,

I'm able to reproduce your issue on Windows. I will try to understand the problem.

from proxsuite.

jorisv avatar jorisv commented on July 28, 2024

Hello @mahdad-es,

#290 should fix your problem.
You can checkout the devel branch to try it.

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Hello @mahdad-es,

#290 should fix your problem. You can checkout the devel branch to try it.

Hello @jorisv
Thank you so much for your help , some errors are fixed as you suggested i still have one error,do you have any idea about that?
"C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\tuple.hpp(357,1): error C2059: syntax error: '...'
[C:\Users\mesmaeil\Documents\nipt-main2\build\nipt.vcxproj]
(compiling source file '../src/recon_transhi2015.cpp')
C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\tuple.hpp(357,1):
the template instantiation context (the oldest one first) is
C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\tuple.hpp(431,2):
see reference to class template instantiation 'proxsuite::linalg::veg::tuple::IndexedTuple<proxsuite::linalg::v
eg::_detail::_meta::integer_sequenceproxsuite::linalg::veg::usize,Is...*,Ts...>' being compiled"

from proxsuite.

jorisv avatar jorisv commented on July 28, 2024

Hello @mahdad-es,

Sorry, I can't reproduce this error.
I have build in Debug and Release with Visual Studio Visual Studio 17 2022 and every thing is fine.

Can you try to build the standalone proxsuite project ? (no the proxsuite header inside your project)

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Hello @mahdad-es,
Can you try to build the standalone proxsuite project ? (no the proxsuite header inside your project)
Hello @jorisv
Thank you for your reply, yes, the previous problem was solved and I was able to fix similar errors in my project. The proxsuite project is built completely and only in my project when I use the header files, I encountered this error.

from proxsuite.

jorisv avatar jorisv commented on July 28, 2024

Hello @mahdad-es,

It's strange that proxsuite is building as a standalone project but not inside your project.
Can you show me the include order in recon_transhi2015.cpp ?
Also, can you show me the command line used to compile this file ? You can find it by giving the following option to cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON. This will generate the compile_commands.json file in your build directory. You can find the compiler command line inside it.

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Hello @jorisv
thank you for your time
include order in recon_transhi2015.cpp is as follows,when i put the header #include <proxsuite/proxqp/dense/dense.hpp> in my recon_transhi2015.h header file also i give similar error,
"#include "recon_transhi2015.h"
#include "ConstraintSet.h"
#include "../../gradient/dMRI_grad.h"
#include "../../../math/sphere.h"
#include "../../../image/image_operators.h"
#include "../../../surface/surface.h"
#include
#include
#include
#include
#include <proxsuite/proxqp/dense/dense.hpp>
#include <proxsuite/proxqp/utils/random_qp_problems.hpp>"
and command line used to compile this file is as :{
"directory": "C:/Users/mesmaeil/Documents/nipt-main2/out/build/x64-Debug",
"command": "C:\PROGRA1\MICROS4\2022\COMMUN1\VC\Tools\MSVC\14381.331\bin\Hostx64\x64\cl.exe /nologo /TP -DNOMINMAX -D_USE_MATH_DEFINES -IC:\Users\mesmaeil\Documents\nipt-main2\src -IC:\Users\mesmaeil\Documents\nipt-main2\external -IC:\Users\mesmaeil\Documents\nipt-main2\external\expat -IC:\Users\mesmaeil\Documents\nipt-main2\external\eigen-3.4.0 /DWIN32 /D_WINDOWS /GR /EHsc /Zi /Ob0 /Od /RTC1 -std:c++17 -MTd -D BUILD_FOR_WINDOWS /bigobj /wd4244 /wd4267 /wd4996 /wd4305 /wd4101 /FoCMakeFiles\OBJS.dir\src\dMRI\reconstruction\transhi2015\recon_transhi2015.cpp.obj /FdTARGET_COMPILE_PDB /FS -c C:\Users\mesmaeil\Documents\nipt-main2\src\dMRI\reconstruction\transhi2015\recon_transhi2015.cpp",
"file": "C:\Users\mesmaeil\Documents\nipt-main2\src\dMRI\reconstruction\transhi2015\recon_transhi2015.cpp",
"output": "CMakeFiles\OBJS.dir\src\dMRI\reconstruction\transhi2015\recon_transhi2015.cpp.obj"
},

from proxsuite.

jorisv avatar jorisv commented on July 28, 2024

Hello @mahdad-es,

I tried to use same compile flags than you when building proxsuite but I still can't reproduce the issue.

Can you provide me a minimal CMake project with some code that will allow me to reproduce your issue ?

Thank you

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Thank you for your reply.
I have header files of proxsuite in my external library, is it possible to look my project cmakelists.txt configuration and following two files of our project.
the error is "
C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\tuple.hpp(357,1): error C2059: syntax error: '...'
[C:\Users\mesmaeil\Documents\nipt-main2\build\OBJS.vcxproj]
(compiling source file '../src/dMRI/reconstruction/transhi2015/recon_transhi2015.cpp')
C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\tuple.hpp(357,1):
the template instantiation context (the oldest one first) is
C:\Users\mesmaeil\Documents\nipt-main2\external\proxsuite\linalg\veg\tuple.hpp(431,2):
see reference to class template instantiation 'proxsuite::linalg::veg::tuple::IndexedTuple<proxsuite::linalg::v
eg::_detail::_meta::integer_sequenceproxsuite::linalg::veg::usize,Is...*,Ts...>' being compiled""
nipt.zip

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Hello @jorisv
Would you please see the following test code. You can reproduce the issue in following test code.
test.zip

from proxsuite.

mahdad-es avatar mahdad-es commented on July 28, 2024

Hello
could you reproduce the issue in above test code?

from proxsuite.

jcarpent avatar jcarpent commented on July 28, 2024

I will close this issue as it seems to be solved thanks to the recommendations provided by @jorisv.

from proxsuite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.