Code Monkey home page Code Monkey logo

Comments (5)

adeguet1 avatar adeguet1 commented on July 29, 2024

I definitively didn't claim this branch was ready. I'll let you know when it is ready for testing. There are some parts of the library that are likely not needed so I'd rather remove them than add multiple conditional compilation depending on OS and compiler.

from cisst.

adeguet1 avatar adeguet1 commented on July 29, 2024

I think I've ported most of your changes now. The main differences are:

  • I tried to remove useless code instead of porting it (downcast to bool in cmnPrintf helper class)
  • For both isnan and isfinite, it seems to me that on the long run the std:: versions are better so I'm looking for them on all OSs/compilers and use them if found.

@vincent-hui , can you give this a try? I tested on 17.04 with gcc 6.3.0 and clang 4.0.0 with and without the CMAKE_CXX_STANDARD 14. In all cases it found std::isnan and std::isfinite in . When you try on your settings, can you also turn ON the cisst CMake setting CISST_BUILD_TESTS and once everything is build, launch cisstCommonTests -r as well as cisstVectorTests -r?

from cisst.

vincent-hui avatar vincent-hui commented on July 29, 2024

I tried again, I can build cisst with and without the CMAKE_CXX_STANDARD 14 on Ubuntu 16.04 with gcc 5.4. I turned on CISST_BUILD_TESTS and run cisstCommonTests -r as well as cisstVectorTests -r. All tests are passed with and without the CMAKE_CXX_STANDARD 14.

vincent@vincent-VirtualBox:~$ cisstCommonTests -r
.........................................
Cisst operating system code: 2
Cisst operating system string: Linux
Cisst compiler code: 1
Cisst compiler string: gcc
CMake system name: Linux
CMake c++ compiler: c++
CMake generator: Unix Makefiles
.................


OK (58 tests)


vincent@vincent-VirtualBox:~$ cisstVectorTests -r
...........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................


OK (907 tests)

However I encountered a build issue after CISST_BUILD_TESTS is turned on with catkin

catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release -DCISST_BUILD_TESTS=1

I need to build cisst by running catkin build twice. the first build fails always

src/cisst-saw/cisst/cisstCommon/cmnGenericObject.h:40:23: fatal error: json/json.h: No such file or directory compilation terminated.

I need to run catkin build again after the first build fails, cisst can be built sucessfully after running catkin build twice.

from cisst.

adeguet1 avatar adeguet1 commented on July 29, 2024

I will test this code asap on Windows with different compilers and see if it passes the unit tests for cisstCommon and cisstVector. If it does, I'll merge to the devel branch.

As for the need to build twice, this is a known issue. Our CMakeLists.txt predate catkin build tools. One thing we do is to look for cisstConfig.cmake in sub directories even though this a single CMake project. It made sense when we developed our code but it doesn't work with catkin. Catkin will only copy the generated files at the end of the build, so the cisstConfig.cmake file can't be found until the first build is finished. The proper fix would be to move all the test programs in a different package (e.g. cisst_tests) that would depend on cisst but this would need some major file re-organization. In any case, this is not a regression so this won't stop me from merging this branch.

from cisst.

adeguet1 avatar adeguet1 commented on July 29, 2024

I tested on Windows 7 with VS 2013 and was able to run cisstCommon and cisstVector unit tests. Merged to devel branch.

from cisst.

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.