linux debian - V0.4 compilation error

Topics about DSLogic software development
Hello,

building the gui doesn't work (all previous steps are ok) on a debian 7.6 intel, with qt 4.8.2 (latest). here are some elements:
cmake .
-- Boost version: 1.49.0
-- Found the following Boost libraries:
-- filesystem
-- system
-- thread
-- Found libusb-1.0:
-- - Includes: /usr/include
-- - Libraries: /usr/lib/x86_64-linux-gnu/libusb-1.0.so
-- Configuring done
CMake Warning at CMakeLists.txt:323 (add_executable):
Cannot generate a safe linker search path for target DSLogic because files
in some directories may conflict with libraries in implicit directories:

link library [libusb-1.0.so] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
/usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:323 (add_executable):
Cannot generate a safe runtime search path for target DSLogic because files
in some directories may conflict with libraries in implicit directories:

runtime library [libusb-1.0.so.0] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
/usr/local/lib

Some of these libraries may not be found correctly.


-- Generating done
-- Build files have been written to: /home/in/DSLogic/DSLogic-gui




[ 1%] Building CXX object CMakeFiles/DSLogic.dir/pv/view/dsosignal.cpp.o
/home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp: In constructor ‘pv::view::DsoSignal::DsoSignal(boost::shared_ptr<pv::device::DevInst>, boost::shared_ptr<pv::data::Dso>, const sr_channel*)’:
/home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:130:72: error: no matching function for call to ‘pv::view::dslDial::dslDial(const uint64_t&, const uint64_t&, QVector<long unsigned int>&, QVector<QString>&)’
/home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:130:72: note: candidates are:
In file included from /home/in/DSLogic/DSLogic-gui/pv/view/trace.h:35:0,
from /home/in/DSLogic/DSLogic-gui/pv/view/signal.h:39,
from /home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.h:26,
from /home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:27:
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: pv::view::dslDial::dslDial(quint64, quint64, QVector<long long unsigned int>, QVector<QString>)
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: no known conversion for argument 3 from ‘QVector<long unsigned int>’ to ‘QVector<long long unsigned int>’
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: pv::view::dslDial::dslDial(const pv::view::dslDial&)
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: candidate expects 1 argument, 4 provided
/home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:131:72: error: no matching function for call to ‘pv::view::dslDial::dslDial(const uint64_t&, const uint64_t&, QVector<long unsigned int>&, QVector<QString>&)’
/home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:131:72: note: candidates are:
In file included from /home/in/DSLogic/DSLogic-gui/pv/view/trace.h:35:0,
from /home/in/DSLogic/DSLogic-gui/pv/view/signal.h:39,
from /home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.h:26,
from /home/in/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:27:
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: pv::view::dslDial::dslDial(quint64, quint64, QVector<long long unsigned int>, QVector<QString>)
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: no known conversion for argument 3 from ‘QVector<long unsigned int>’ to ‘QVector<long long unsigned int>’
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: pv::view::dslDial::dslDial(const pv::view::dslDial&)
/home/in/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: candidate expects 1 argument, 4 provided
make[2]: *** [CMakeFiles/DSLogic.dir/pv/view/dsosignal.cpp.o] Erreur 1
make[1]: *** [CMakeFiles/DSLogic.dir/all] Erreur 2
make: *** [all] Erreur 2
epierre
 
Posts: 2
Joined: Thu Sep 25, 2014 4:20 am

Hi, I believe I have the same problem. PC runs Ubuntu 14.04 64bit Intel.
Everything went fine until the build of the GUI.
(I have libboost-filesystem1.54.0)
Here are my debug outputs:

[ 1%] Building CXX object CMakeFiles/DSLogic.dir/pv/view/dsosignal.cpp.o
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp: In constructor ‘pv::view::DsoSignal::DsoSignal(boost::shared_ptr<pv::device::DevInst>, boost::shared_ptr<pv::data::Dso>, const sr_channel*)’:
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:130:72: error: no matching function for call to ‘pv::view::dslDial::dslDial(const uint64_t&, const uint64_t&, QVector<long unsigned int>&, QVector<QString>&)’
_vDial = new dslDial(vDialValueCount, vDialValueStep, vValue, vUnit);
^
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:130:72: note: candidates are:
In file included from /home/balazs/DSLogic/DSLogic-gui/pv/view/trace.h:35:0,
from /home/balazs/DSLogic/DSLogic-gui/pv/view/signal.h:39,
from /home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.h:26,
from /home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:27:
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: pv::view::dslDial::dslDial(quint64, quint64, QVector<long long unsigned int>, QVector<QString>)
dslDial(quint64 div, quint64 step,
^
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: no known conversion for argument 3 from ‘QVector<long unsigned int>’ to ‘QVector<long long unsigned int>’
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: pv::view::dslDial::dslDial(const pv::view::dslDial&)
class dslDial
^
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: candidate expects 1 argument, 4 provided
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:131:72: error: no matching function for call to ‘pv::view::dslDial::dslDial(const uint64_t&, const uint64_t&, QVector<long unsigned int>&, QVector<QString>&)’
_hDial = new dslDial(hDialValueCount, hDialValueStep, hValue, hUnit);
^
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:131:72: note: candidates are:
In file included from /home/balazs/DSLogic/DSLogic-gui/pv/view/trace.h:35:0,
from /home/balazs/DSLogic/DSLogic-gui/pv/view/signal.h:39,
from /home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.h:26,
from /home/balazs/DSLogic/DSLogic-gui/pv/view/dsosignal.cpp:27:
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: pv::view::dslDial::dslDial(quint64, quint64, QVector<long long unsigned int>, QVector<QString>)
dslDial(quint64 div, quint64 step,
^
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:13:5: note: no known conversion for argument 3 from ‘QVector<long unsigned int>’ to ‘QVector<long long unsigned int>’
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: pv::view::dslDial::dslDial(const pv::view::dslDial&)
class dslDial
^
/home/balazs/DSLogic/DSLogic-gui/pv/view/dsldial.h:10:7: note: candidate expects 1 argument, 4 provided
make[2]: *** [CMakeFiles/DSLogic.dir/pv/view/dsosignal.cpp.o] Error 1
make[1]: *** [CMakeFiles/DSLogic.dir/all] Error 2
make: *** [all] Error 2


Anyone any idea?

Thank you!
vddvss
 
Posts: 2
Joined: Sun Oct 05, 2014 4:37 am

The problem is a type incompatability between uint64_t and quint64. You can hack around this by editing DsoSignal::DsoSignal() .

dsosignal.cpp:116:
QVector<uint64_t> vValue; to QVector<quint64> vValue;
and
QVector<uint64_t> hValue; to QVector<quint64> hValue;
dvranizan
 
Posts: 1
Joined: Thu Oct 09, 2014 6:39 am

Ok, next error - ubuntu 12.04...

[ 68%] Building CXX object CMakeFiles/DSLogic.dir/pv/dock/protocoldock.cpp.o
[ 69%] Building CXX object CMakeFiles/DSLogic.dir/pv/data/decoderstack.cpp.o
[ 69%] Building CXX object CMakeFiles/DSLogic.dir/pv/data/decode/annotation.cpp.o
/DSLogic/DSLogic-gui/pv/data/decode/annotation.cpp: In constructor ‘pv::data::decode::Annotation::Annotation(const srd_proto_data*)’:
/DSLogic/DSLogic-gui/pv/data/decode/annotation.cpp:43:17: error: ‘const struct srd_proto_data_annotation’ has no member named ‘ann_format’
make[2]: *** [CMakeFiles/DSLogic.dir/pv/data/decode/annotation.cpp.o] Error 1
make[1]: *** [CMakeFiles/DSLogic.dir/all] Error 2
make: *** [all] Error 2

The following change in line 43 makes it compile

- _format = pda->ann_class;
+ _format = pda->ann_format;

Reference: https://www.mail-archive.com/sigrok-dev ... 01150.html

only to break when starting...

$ DSLogic
sr: Sanity-checking all drivers.
sr: Sanity-checking all input modules.
sr: Sanity-checking all output modules.
DSLogic: .../DSLogic/DSLogic-gui/main.cpp:126: int main(int, char**): Assertion `dir.cd("decoders")' failed.
Aborted (core dumped)

I then tried to compile with ENABLE_DECODE=OFF which breaks other stuff... why have this as a compile time option when disabling it doesn't work??? Enough time spent with this version...

Cheers,

Joachim
jring
 
Posts: 1
Joined: Sat Oct 11, 2014 8:38 am

with the above, I can start in demo version... :D
epierre
 
Posts: 2
Joined: Thu Sep 25, 2014 4:20 am

Those bugs have been fixed in github.
Please try it again.
Many thanks.
Andy
Site Admin
 
Posts: 149
Joined: Fri Jul 11, 2014 9:20 am

Now it works for me too, thank you everyone! ;-)
vddvss
 
Posts: 2
Joined: Sun Oct 05, 2014 4:37 am


Return to DSLogic Software

Who is online
Users browsing this forum: No registered users and 1 guest
cron