Closed msingh9 closed 1 year ago
Hi @msingh9,
The error is coming from OpenDB (one of the dependencies); I will try to resolve it formally in the future.
But for now, a quick -hacky- workaround is to go to external/OpenDB/CMakeLists.txt at line 42, change find_package(SWIG REQUIRED 3.0)
to find_package(SWIG REQUIRED)
Thanks. I had to make similar change to external/OpenSTA/CMakeLists.txt. Build is running now..
I have another unrelated question. Openroad also has this command "repair_timing", is it their own's or it is same as OpenPhySyn?
Hmm, just when you hit send, you encounter the issue. Now I hit
/tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:355:19: error: ‘numeric_limits’ is not a member of ‘std’
355 | int yMin = std::numeric_limits~~~~~
/tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:355:34: error: expected primary-expression before ‘int’
355 | int yMin = std::numeric_limits~~~~~
/tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:356:34: error: expected primary-expression before ‘int’
356 | int xMin = std::numeric_limits
Thanks. I had to make similar change to external/OpenSTA/CMakeLists.txt. Build is running now..
I have another unrelated question. Openroad also has this command "repair_timing", is it their own's or it is same as OpenPhySyn?
It should be different, I think repair_timing
is a common command name in EDA tools in general.
Hmm, just when you hit send, you encounter the issue. Now I hit
/tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:355:19: error: ‘numeric_limits’ is not a member of ‘std’ 355 | int yMin = std::numeric_limits::max(); | ^
~~~ /tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:355:34: error: expected primary-expression before ‘int’ 355 | int yMin = std::numeric_limits::max(); | ^/tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:356:19: error: ‘numeric_limits’ is not a member of ‘std’ 356 | int xMin = std::numeric_limits::max(); | ^~~~ /tmp/OpenPhySyn/external/OpenDB/src/zutil/poly_decomp.cpp:356:34: error: expected primary-expression before ‘int’ 356 | int xMin = std::numeric_limits::max(); | ^make[2]: [external/OpenDB/src/zutil/CMakeFiles/zutil.dir/build.make:163: external/OpenDB/src/zutil/CMakeFiles/zutil.dir/poly_decomp.cpp.o] Error 1 make[2]: Leaving directory '/tmp/OpenPhySyn/build' make[1]: [CMakeFiles/Makefile2:1753: external/OpenDB/src/zutil/CMakeFiles/zutil.dir/all] Error 2 make[1]: Leaving directory '/tmp/OpenPhySyn/build' make: *** [Makefile:149: all] Error 2
Seems related to compiler versions, for now, edit the file external/OpenDB/src/zutil/poly_decomp.cpp and add the header #include <limits>
It worked. Thanks. Will try it out and make good use of it. Thanks for developing opensource SW.
My cmake .. step is failing during installation. I have SWIG 4.0.2 installed but it seems like looking for 3.0.
I also have openroad installed which uses SWIG 4.0.2. For this reason I don't want to downgrade SWIG to 3.0. Is there a way to bypass this issue?
-- Found BISON: /usr/bin/bison (found version "3.8.2") CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find SWIG (missing: 3.0) (found version "4.0.2") Call Stack (most recent call first): /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-3.22/Modules/FindSWIG.cmake:153 (find_package_handle_standard_args) external/OpenDB/CMakeLists.txt:42 (find_package)