Hello Gerhard,

Thank you very much for your quick help.

Unfortunately I am not a very programmer, but I will try my best.

My intention was just to build an actual working version of sigrok,
with https://sigrok.org/wiki/Mac_OS_X

After several hours of hard work for me I thought I could help others,
which are trying the same.

Top #1
The diff is:
diff -c  usb.h.origin usb.h
*** usb.h.origin    2017-04-26 19:40:03.000000000 +0200
--- usb.h    2017-04-23 09:47:41.000000000 +0200
***************
*** 28,33 ****
--- 28,35 ----
  #include <unistd.h>
  #include <stdlib.h>
  #include <limits.h>
+ // type problem at Mac OS Sierra 10.12.4, 2017.04.23 RR
+ #include "types.h"

  #include <dirent.h>

The copyright of the file usb.h is:
 * Copyright (c) 2000-2003 Johannes Erdfelt <johan...@erdfelt.com>


Top #2
I agree, that it is better to solve the warnings, instead of just suppressing them.
Unfortunately my expertise was not good enough to solve those warnings
by myself.
In order the make the build work, that was my practical solution.

The diff is:
$ diff -c CMakeLists.txt.origin CMakeLists.txt
*** CMakeLists.txt.origin    2017-04-26 19:59:02.000000000 +0200
--- CMakeLists.txt    2017-04-23 13:31:43.000000000 +0200
***************
*** 28,35 ****

  #===============================================================================
  #= User Options
!
! option(DISABLE_WERROR "Build without -Werror" FALSE)
  option(ENABLE_SIGNALS "Build with UNIX signals" TRUE)
  option(ENABLE_DECODE "Build with libsigrokdecode" TRUE)
  option(ENABLE_TESTS "Enable unit tests" TRUE)
--- 28,37 ----

  #===============================================================================
  #= User Options
! #-------------------------------------------------------------------------------
! # 2017-04-23 RR
! option(DISABLE_WERROR "Build without -Werror" TRUE)
! #option(DISABLE_WERROR "Build without -Werror" FALSE)
  option(ENABLE_SIGNALS "Build with UNIX signals" TRUE)
  option(ENABLE_DECODE "Build with libsigrokdecode" TRUE)
  option(ENABLE_TESTS "Enable unit tests" TRUE)
rudis-Mac-Pro-2:pulseview rudi$ mc


The original warnings are:
In file included from /usr/local/Cellar/pulseview/pv/view/view.cpp:34:
In file included from /opt/local/include/boost/archive/text_iarchive.hpp:24:
In file included from /opt/local/include/boost/archive/basic_text_iarchive.hpp:30:
In file included from /opt/local/include/boost/archive/detail/common_iarchive.hpp:23:
In file included from /opt/local/include/boost/archive/detail/interface_iarchive.hpp:22:
In file included from /opt/local/include/boost/archive/detail/iserializer.hpp:46:
/opt/local/include/boost/serialization/extended_type_info_typeid.hpp:102:9: error: unused typedef 'STATIC_WARNING_LINE102'
      [-Werror,-Wunused-local-typedef]
        BOOST_STATIC_WARNING(boost::is_polymorphic< T >::value);
        ^
/opt/local/include/boost/serialization/static_warning.hpp:100:33: note: expanded from macro 'BOOST_STATIC_WARNING'
#define BOOST_STATIC_WARNING(B) BOOST_SERIALIZATION_BSW(B, __LINE__)
                                ^
/opt/local/include/boost/serialization/static_warning.hpp:99:7: note: expanded from macro 'BOOST_SERIALIZATION_BSW'
    > BOOST_JOIN(STATIC_WARNING_LINE, L) BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE;
      ^
/opt/local/include/boost/config/suffix.hpp:544:28: note: expanded from macro 'BOOST_JOIN'
#define BOOST_JOIN( X, Y ) BOOST_DO_JOIN( X, Y )
                           ^
/opt/local/include/boost/config/suffix.hpp:545:31: note: expanded from macro 'BOOST_DO_JOIN'
#define BOOST_DO_JOIN( X, Y ) BOOST_DO_JOIN2(X,Y)
                              ^
/opt/local/include/boost/config/suffix.hpp:546:32: note: expanded from macro 'BOOST_DO_JOIN2'
#define BOOST_DO_JOIN2( X, Y ) X##Y
                               ^
<scratch space>:94:1: note: expanded from here
STATIC_WARNING_LINE102
^
In file included from /usr/local/Cellar/pulseview/pv/view/view.cpp:34:
In file included from /opt/local/include/boost/archive/text_iarchive.hpp:24:
In file included from /opt/local/include/boost/archive/basic_text_iarchive.hpp:30:
In file included from /opt/local/include/boost/archive/detail/common_iarchive.hpp:23:
In file included from /opt/local/include/boost/archive/detail/interface_iarchive.hpp:22:
In file included from /opt/local/include/boost/archive/detail/iserializer.hpp:86:
/opt/local/include/boost/archive/detail/check.hpp:98:5: error: unused typedef 'STATIC_WARNING_LINE98'
      [-Werror,-Wunused-local-typedef]
    BOOST_STATIC_WARNING(typex::value);
    ^
/opt/local/include/boost/serialization/static_warning.hpp:100:33: note: expanded from macro 'BOOST_STATIC_WARNING'
#define BOOST_STATIC_WARNING(B) BOOST_SERIALIZATION_BSW(B, __LINE__)
                                ^
/opt/local/include/boost/serialization/static_warning.hpp:99:7: note: expanded from macro 'BOOST_SERIALIZATION_BSW'
    > BOOST_JOIN(STATIC_WARNING_LINE, L) BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE;
      ^
/opt/local/include/boost/config/suffix.hpp:544:28: note: expanded from macro 'BOOST_JOIN'
#define BOOST_JOIN( X, Y ) BOOST_DO_JOIN( X, Y )
                           ^
/opt/local/include/boost/config/suffix.hpp:545:31: note: expanded from macro 'BOOST_DO_JOIN'
#define BOOST_DO_JOIN( X, Y ) BOOST_DO_JOIN2(X,Y)
                              ^
/opt/local/include/boost/config/suffix.hpp:546:32: note: expanded from macro 'BOOST_DO_JOIN2'
#define BOOST_DO_JOIN2( X, Y ) X##Y
                               ^
<scratch space>:183:1: note: expanded from here
STATIC_WARNING_LINE98
^
In file included from /usr/local/Cellar/pulseview/pv/view/view.cpp:34:
In file included from /opt/local/include/boost/archive/text_iarchive.hpp:24:
In file included from /opt/local/include/boost/archive/basic_text_iarchive.hpp:30:
In file included from /opt/local/include/boost/archive/detail/common_iarchive.hpp:23:
In file included from /opt/local/include/boost/archive/detail/interface_iarchive.hpp:22:
In file included from /opt/local/include/boost/archive/detail/iserializer.hpp:86:
/opt/local/include/boost/archive/detail/check.hpp:137:5: error: unused typedef 'STATIC_WARNING_LINE137'
      [-Werror,-Wunused-local-typedef]
    BOOST_STATIC_WARNING(typex::value);
    ^
/opt/local/include/boost/serialization/static_warning.hpp:100:33: note: expanded from macro 'BOOST_STATIC_WARNING'
#define BOOST_STATIC_WARNING(B) BOOST_SERIALIZATION_BSW(B, __LINE__)
                                ^
/opt/local/include/boost/serialization/static_warning.hpp:99:7: note: expanded from macro 'BOOST_SERIALIZATION_BSW'
    > BOOST_JOIN(STATIC_WARNING_LINE, L) BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE;
      ^
/opt/local/include/boost/config/suffix.hpp:544:28: note: expanded from macro 'BOOST_JOIN'
#define BOOST_JOIN( X, Y ) BOOST_DO_JOIN( X, Y )
                           ^
/opt/local/include/boost/config/suffix.hpp:545:31: note: expanded from macro 'BOOST_DO_JOIN'
#define BOOST_DO_JOIN( X, Y ) BOOST_DO_JOIN2(X,Y)
                              ^
/opt/local/include/boost/config/suffix.hpp:546:32: note: expanded from macro 'BOOST_DO_JOIN2'
#define BOOST_DO_JOIN2( X, Y ) X##Y
                               ^
<scratch space>:185:1: note: expanded from here
STATIC_WARNING_LINE137
^
In file included from /usr/local/Cellar/pulseview/pv/view/view.cpp:34:
In file included from /opt/local/include/boost/archive/text_iarchive.hpp:24:
In file included from /opt/local/include/boost/archive/basic_text_iarchive.hpp:30:
In file included from /opt/local/include/boost/archive/detail/common_iarchive.hpp:23:
In file included from /opt/local/include/boost/archive/detail/interface_iarchive.hpp:22:
In file included from /opt/local/include/boost/archive/detail/iserializer.hpp:86:
/opt/local/include/boost/archive/detail/check.hpp:148:5: error: unused typedef 'STATIC_WARNING_LINE148'
      [-Werror,-Wunused-local-typedef]
    BOOST_STATIC_WARNING(typex::value);
    ^
/opt/local/include/boost/serialization/static_warning.hpp:100:33: note: expanded from macro 'BOOST_STATIC_WARNING'
#define BOOST_STATIC_WARNING(B) BOOST_SERIALIZATION_BSW(B, __LINE__)
                                ^
/opt/local/include/boost/serialization/static_warning.hpp:99:7: note: expanded from macro 'BOOST_SERIALIZATION_BSW'
    > BOOST_JOIN(STATIC_WARNING_LINE, L) BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE;
      ^
/opt/local/include/boost/config/suffix.hpp:544:28: note: expanded from macro 'BOOST_JOIN'
#define BOOST_JOIN( X, Y ) BOOST_DO_JOIN( X, Y )
                           ^
/opt/local/include/boost/config/suffix.hpp:545:31: note: expanded from macro 'BOOST_DO_JOIN'
#define BOOST_DO_JOIN( X, Y ) BOOST_DO_JOIN2(X,Y)
                              ^
/opt/local/include/boost/config/suffix.hpp:546:32: note: expanded from macro 'BOOST_DO_JOIN2'
#define BOOST_DO_JOIN2( X, Y ) X##Y
                               ^
<scratch space>:187:1: note: expanded from here
STATIC_WARNING_LINE148
^
4 errors generated.
make[2]: *** [CMakeFiles/pulseview.dir/pv/view/view.cpp.o] Error 1
make[1]: *** [CMakeFiles/pulseview.dir/all] Error 2
make: *** [all] Error 2

Hopefully you can fix those warnings, in order that other people can
build pulseview under Mac OS Sierra without my trick.

Or in case I did some wrong, please help me to fix it.


Top #3 pulseview, decoder UART, Trigger delay
There is a "trailing edge" Trigger delay of 1,1 - 4,9 ms in 10 measurements:
3.0, 1.2, 2.5, 1.3, 3.9, 2.4, 1.1, 3.7, 2.1, 4.9 ms
The behaviour is the same in Trigger mode "leading edge" or "both edges".
Device: CWAV USBee AX
fx2lafw: Detected REVID=1, it's a Cypress CY7C68013A (FX2LP).
UART 115,200 Baud 8N1, no parity
Characters send: 5, 0x0D (carriage return)
5k samples, 500 KHz sampling rate.

The installation details in Menu->Settings->About are:
PulseView 0.4.0-git-fe934a9

Used libraries:
Qt              5.7.1
libsigrok       0.5.0-git-07d4e86 (lib version 3:0:0)
libsigrokdecode 0.5.0-git-ddc23d8 (lib version 3:0:0)

Do you have any idea, why I got such a random delayed trigger?

With best regards, Rudolf


Am 26.04.17 um 18:23 schrieb Gerhard Sittig:
On Wed, Apr 26, 2017 at 15:58 +0200, Rudolf Reuter wrote:
Build sigrok under Mac OS Sierra 10.12.4, problems (2017-04-23)

Problem #1, libsigrok:
compile errors:
   In file included from librigrok/src/hardware/ftdi-la/api.c:21:
   In file included from /opt/local/include/ftdi.h:20:
   /opt/local/include/usb.h:81:2: error: unknown type name 'u_int8_t'; 
did you mean '__int8_t'?
         u_int8_t  bLength;
         ^~~~~~~~
         __int8_t
...
20 errors
Comment: type u_int8_t is not defined
What's the origin of that /opt/local/include/usb.h file?  It
appears to be a "system header" and most probably is not a sigrok
provided one.  Which suggests that the issue is caused by some
other upstream component, and cannot get fixed by the sigrok
project.

BTW the uint8_t etc types are provided by <stdint.h> assuming
that your compiler supports C99 (or a preview of it).


Problem #2, pulseview, compile error on warnings
Comment to file pulseview/CMakeLists.txt:
     The option "Build without -Werror" FALSE
     must be changed to TRUE

Solution: Edit file pulseview/CMakeLists.txt
$ cat CMakeLists.txt | grep -nC 2 Werror
31-#---------------------------------------------------
32-# 2017-04-23 RR
33:option(DISABLE_WERROR "Build without -Werror" TRUE)
34:#option(DISABLE_WERROR "Build without -Werror" FALSE)
...
Hint:  A "diff" more appropriately represents what actually has
changed.  See the diff(1) and patch(1) commands.  Train yourself
to run diff(1) with -u or -c for human readable output.  Or just
use git(1) when you already got the sandbox on your machine.

What exactly is the issue here?  Can you expand?  Is it a problem
when warnings are considered an error?  Which are the warnings
that trouble you, and would it be more appropriate or helpful to
fix those warnings instead of just silencing the compiler?  After
all the compiler tries to tell you something when it emits a
warning. :)


virtually yours
Gerhard Sittig


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
sigrok-devel mailing list
sigrok-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sigrok-devel

Reply via email to