Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Library doesn't open
Forum Updated to NodeBB v4.3 + New Features

Library doesn't open

Scheduled Pinned Locked Moved General and Desktop
36 Posts 7 Posters 5.2k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    manuja
    wrote on 22 Mar 2016, 11:37 last edited by manuja
    #1

    I am trying to link Bitscope library, http://www.bitscope.com/software/library/ to QtCreator 5.6. I followed the normal instructions of adding an external library and this code was produced in .pro
    win32:CONFIG(release, debug|release): LIBS += -L$$PWD/'C:/Program Files (x86)/BitScope/Library/' -lBitLib
    else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/'C:/Program Files (x86)/BitScope/Library/' -lBitLibd
    else:unix: LIBS += -L$$PWD/'C:/Program Files (x86)/BitScope/Library/' -lBitLib

    INCLUDEPATH += $$PWD/'C:/Program Files (x86)/BitScope/Library'
    DEPENDPATH += $$PWD/'C:/Program Files (x86)/BitScope/Library'

    But when build produces an error
    :-1: error: LNK1104: cannot open file 'BitLibd.lib'

    Thanks in advance for a solution

    1 Reply Last reply
    0
    • J Offline
      J Offline
      jsulm
      Lifetime Qt Champion
      wrote on 22 Mar 2016, 12:28 last edited by
      #2

      Do you have BitLibd.lib in C:/Program Files (x86)/BitScope/Library?
      In general you should avoid using directories with blanks, this is a source for problems.

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      M 1 Reply Last reply 22 Mar 2016, 14:13
      0
      • J jsulm
        22 Mar 2016, 12:28

        Do you have BitLibd.lib in C:/Program Files (x86)/BitScope/Library?
        In general you should avoid using directories with blanks, this is a source for problems.

        M Offline
        M Offline
        manuja
        wrote on 22 Mar 2016, 14:13 last edited by manuja
        #3

        @jsulm Thank you very much for replying
        The Library has BitLib.lib.
        BitLibd.lib was created since I kept the default tick on in "Add 'd' suffix for debug version" in the 'add library' dialog. Even if I uncheck it and add the library:
        The code created in .pro is
        unix|win32: LIBS += -L$$PWD/'C:/Program Files (x86)/BitScope/Library/' -lBitLib

        INCLUDEPATH += $$PWD/'C:/Program Files (x86)/BitScope/Library'
        DEPENDPATH += $$PWD/'C:/Program Files (x86)/BitScope/Library'

        and the error remains as
        :-1: error: LNK1104: cannot open file 'BitLib.lib'

        I tried qmake -> build procedure but still the error remains.
        Even tried deleting '$$PWD' in paths as suggested in a similar thread but the problem remains.

        1 Reply Last reply
        0
        • P Offline
          P Offline
          Pablo J. Rogina
          wrote on 22 Mar 2016, 14:39 last edited by
          #4

          @manuja I assume your development enviroment is Windows. If so, could it be possible you uninstall BitScope library from default installation folder (i.e. C:/Program Files (x86)/BitScope) and install it again under a path without spaces (i.e. C:\BitScope)?
          I've tried and I was able to build a simple Qt console application just for Windows and adding by hand these lines to the .pro file:
          INCLUDEPATH +=C:/BitScope/Library
          LIBS += -LC:/BitScope/Library -lBitLib

          Upvote the answer(s) that helped you solve the issue
          Use "Topic Tools" button to mark your post as Solved
          Add screenshots via postimage.org
          Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

          M 1 Reply Last reply 22 Mar 2016, 15:56
          0
          • P Pablo J. Rogina
            22 Mar 2016, 14:39

            @manuja I assume your development enviroment is Windows. If so, could it be possible you uninstall BitScope library from default installation folder (i.e. C:/Program Files (x86)/BitScope) and install it again under a path without spaces (i.e. C:\BitScope)?
            I've tried and I was able to build a simple Qt console application just for Windows and adding by hand these lines to the .pro file:
            INCLUDEPATH +=C:/BitScope/Library
            LIBS += -LC:/BitScope/Library -lBitLib

            M Offline
            M Offline
            manuja
            wrote on 22 Mar 2016, 15:56 last edited by manuja
            #5

            @Pablo-J.-Rogina Thanks for the reply.
            Yes I am working in Windows. I changed the installation folder to C:, reinstalled the library and added the lines you suggested. Then it created a number of errors as
            mainwindow.obj:-1: error: LNK2019: unresolved external symbol BL_Count referenced in function "public: _cdecl MainWindow::MainWindow(class QWidget *)" (??0MainWindow@@QEAA@PEAVQWidget@@@Z)
            And the error appears for all the BL
            * functions.

            When I go with the .pro code created automatically when adding the library the earlier error remains. That is:
            :-1: error: LNK1104: cannot open file 'BitLib.lib'
            :(

            1 Reply Last reply
            0
            • P Offline
              P Offline
              Pablo J. Rogina
              wrote on 22 Mar 2016, 16:12 last edited by
              #6

              I changed the installation folder to C:
              Could you state the full path of your installation folder?
              And could you post the contents of your .pro file?

              Upvote the answer(s) that helped you solve the issue
              Use "Topic Tools" button to mark your post as Solved
              Add screenshots via postimage.org
              Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

              M 1 Reply Last reply 22 Mar 2016, 16:18
              0
              • P Pablo J. Rogina
                22 Mar 2016, 16:12

                I changed the installation folder to C:
                Could you state the full path of your installation folder?
                And could you post the contents of your .pro file?

                M Offline
                M Offline
                manuja
                wrote on 22 Mar 2016, 16:18 last edited by
                #7

                @Pablo-J.-Rogina
                unix|win32: LIBS += -L$$PWD/C:/BitScope/Library/ -lBitLib

                INCLUDEPATH += $$PWD/C:/BitScope/Library
                DEPENDPATH += $$PWD/C:/BitScope/Library

                This is the .pro code that is generated automatically.

                C:\BitScope\Library - The full path of library

                Thanks

                1 Reply Last reply
                0
                • P Offline
                  P Offline
                  Pablo J. Rogina
                  wrote on 22 Mar 2016, 16:23 last edited by
                  #8

                  It looks like you're not following my recommendations :-)
                  Forget about the automatically created .pro file, change it by hand. Please compare the two lines I posted with what you have now...

                  Upvote the answer(s) that helped you solve the issue
                  Use "Topic Tools" button to mark your post as Solved
                  Add screenshots via postimage.org
                  Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

                  M 1 Reply Last reply 22 Mar 2016, 16:35
                  0
                  • P Pablo J. Rogina
                    22 Mar 2016, 16:23

                    It looks like you're not following my recommendations :-)
                    Forget about the automatically created .pro file, change it by hand. Please compare the two lines I posted with what you have now...

                    M Offline
                    M Offline
                    manuja
                    wrote on 22 Mar 2016, 16:35 last edited by manuja
                    #9

                    @Pablo-J.-Rogina I'm sorry but I did try the lines you suggested as I mentioned in my first reply to you. But it created 11 errors for each of the BL_ functions in my mainwindow.cpp.
                    Maybe the error is now with the functions I used.
                    I directly copied from the sample code on the Bitscope Library manual, these lines:
                    BL_Intro(BL_ZERO); /* optional, default BL_ZERO /
                    BL_Delay(BL_ZERO); /
                    optional, default BL_ZERO /
                    BL_Rate(MY_RATE); /
                    optional, default BL_MAX_RATE /
                    BL_Size(MY_SIZE); /
                    optional, default BL_MAX_SIZE /
                    BL_Select(BL_SELECT_CHANNEL,MY_CHANNEL); /
                    choose the channel /
                    BL_Trigger(BL_ZERO,BL_TRIG_RISE); /
                    optional when untriggered /
                    BL_Select(BL_SELECT_SOURCE,BL_SOURCE_POD); /
                    use the POD input /
                    BL_Range(BL_Count(BL_COUNT_RANGE)); /
                    maximum range /
                    BL_Offset(BL_ZERO); /
                    optional, default 0 /
                    BL_Enable(TRUE); /
                    at least one channel must be initialised */

                    Very much appreciate your support :)

                    I'll add the full code just in case:
                    #include "mainwindow.h"
                    #include "ui_mainwindow.h"
                    #include "limits.h"
                    #include "bitlib.h"

                    int x1=0, yl=0, x2=0, y2=0, x3=0, y3=0, x4=0, y4=0;
                    #define MY_DEVICES 1 /* open one device only /
                    #define MY_PROBE_FILE "" /
                    default probe file if unspecified */

                    #define MY_DEVICE 0
                    #define MY_CHANNEL 0
                    #define MY_MODE BL_MODE_FAST
                    #define MY_RATE 1000000 /* capture sample rate /
                    #define MY_SIZE 4 /
                    number of samples to capture */

                    MainWindow::MainWindow(QWidget parent) :
                    QMainWindow(parent),
                    ui(new Ui::MainWindow)
                    {
                    ui->setupUi(this);
                    BL_Intro(BL_ZERO); /
                    optional, default BL_ZERO /
                    BL_Delay(BL_ZERO); /
                    optional, default BL_ZERO /
                    BL_Rate(MY_RATE); /
                    optional, default BL_MAX_RATE /
                    BL_Size(MY_SIZE); /
                    optional, default BL_MAX_SIZE /
                    BL_Select(BL_SELECT_CHANNEL,MY_CHANNEL); /
                    choose the channel /
                    BL_Trigger(BL_ZERO,BL_TRIG_RISE); /
                    optional when untriggered /
                    BL_Select(BL_SELECT_SOURCE,BL_SOURCE_POD); /
                    use the POD input /
                    BL_Range(BL_Count(BL_COUNT_RANGE)); /
                    maximum range /
                    BL_Offset(BL_ZERO); /
                    optional, default 0 /
                    BL_Enable(TRUE); /
                    at least one channel must be initialised */
                    }

                    MainWindow::~MainWindow()
                    {
                    delete ui;
                    }

                    void MainWindow::on_btnCharge1_clicked()
                    {
                    x1 = ui->txtCharge1->text().toInt();
                    }

                    void MainWindow::on_btnCharge2_clicked()
                    {
                    x2 = ui->txtCharge2->text().toInt();
                    }

                    void MainWindow::on_btnCharge3_clicked()
                    {
                    x3 = ui->txtCharge3->text().toInt();
                    }

                    void MainWindow::on_btnCharge4_clicked()
                    {
                    x4 = ui->txtCharge4->text().toInt();
                    }

                    void MainWindow::on_btnCalibrate_clicked()
                    {

                    QVector<double> x(4),y(4);
                    x[0]=x1;
                    y[0]=yl;
                    x[1]=x2;
                    y[1]=y2;
                    x[2]=x3;
                    y[2]=y3;
                    x[3]=x4;
                    y[3]=y4;
                    ui->Plot->addGraph();
                    ui->Plot->graph(0)->setData(x, y);
                    // give the axes some labels:
                    ui->Plot->xAxis->setLabel("x");
                    ui->Plot->yAxis->setLabel("y");
                    // set axes ranges, so we see all data:
                    ui->Plot->xAxis->setRange(0, 100);
                    //ui->Plot->yAxis->setRange(0, 1);
                    ui->Plot->replot();
                    

                    }

                    1 Reply Last reply
                    0
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on 22 Mar 2016, 23:38 last edited by
                      #10

                      Hi and welcome to devnet,

                      Did you check that both Qt and BitScope are built for the same architecture ?

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      1 Reply Last reply
                      1
                      • P Offline
                        P Offline
                        Pablo J. Rogina
                        wrote on 23 Mar 2016, 14:37 last edited by
                        #11

                        @manuja I've just created a basic Qt GUI application, I hope you can grab code snippets from Bitbucket (sorry no time for a full Git repository).

                        The application just displays a main window, nothing fancy, but by doing that most of the Bitscope functions you posted previously are called from QMainWindow constructor, so that proves Qt was able to build and run the application.

                        As @SGaist mentioned please pay attention to what Bitscope version you're using (I mistakenly used x64 version initially, reinstalling i386 made the way with my environment: Win 7, Qt 4.7.4 and MinGW 32 bit)

                        Upvote the answer(s) that helped you solve the issue
                        Use "Topic Tools" button to mark your post as Solved
                        Add screenshots via postimage.org
                        Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

                        M A 2 Replies Last reply 23 Mar 2016, 15:44
                        0
                        • P Pablo J. Rogina
                          23 Mar 2016, 14:37

                          @manuja I've just created a basic Qt GUI application, I hope you can grab code snippets from Bitbucket (sorry no time for a full Git repository).

                          The application just displays a main window, nothing fancy, but by doing that most of the Bitscope functions you posted previously are called from QMainWindow constructor, so that proves Qt was able to build and run the application.

                          As @SGaist mentioned please pay attention to what Bitscope version you're using (I mistakenly used x64 version initially, reinstalling i386 made the way with my environment: Win 7, Qt 4.7.4 and MinGW 32 bit)

                          M Offline
                          M Offline
                          manuja
                          wrote on 23 Mar 2016, 15:44 last edited by
                          #12

                          @Pablo-J.-Rogina Thank you very much!!!
                          I'll try this. I actually tried the same library functions in a C++ console application on Codeblocks and they worked fine. I'll try with your code. Thanks again :-)

                          1 Reply Last reply
                          0
                          • P Pablo J. Rogina
                            23 Mar 2016, 14:37

                            @manuja I've just created a basic Qt GUI application, I hope you can grab code snippets from Bitbucket (sorry no time for a full Git repository).

                            The application just displays a main window, nothing fancy, but by doing that most of the Bitscope functions you posted previously are called from QMainWindow constructor, so that proves Qt was able to build and run the application.

                            As @SGaist mentioned please pay attention to what Bitscope version you're using (I mistakenly used x64 version initially, reinstalling i386 made the way with my environment: Win 7, Qt 4.7.4 and MinGW 32 bit)

                            A Offline
                            A Offline
                            AlexFi
                            wrote on 16 Sept 2019, 09:23 last edited by
                            #13

                            Hello I have problems to use functions of bitlib.lib.
                            I created a project without Qt, a c++ application, in qt-creator 4.9.2 (Community) version and build with the Qt 5.13.0 MinGW 64-bit and qmaxe.exe. It works for the function BL_Initialize() and every function with the return type void. But the others are not working and i get undefined reference to BL_Delay for example. Mabye someone had the same problem and can help me.

                            Thanks in advance for a solution

                            Alex

                            //ConnectBitScope.pro
                            TEMPLATE = app
                            CONFIG += console c++11
                            CONFIG -= app_bundle
                            CONFIG -= qt
                            
                            SOURCES += \
                                    main.cpp
                            HEADERS += \bitlib.h \
                                bitlib.h
                            
                            
                            INCLUDEPATH +=C:/BitScope64/Library
                            LIBS += -LC:/BitScope64/Library -BitLib
                            
                            
                            
                            //main.cpp
                            #include <iostream>
                            #include <bitlib.h>
                            using namespace std;
                            
                            #define MY_DEVICES 1                            /* open one device only */
                            #define MY_PROBE_FILE ""                        /* default probe file if unspecified */
                            
                            #define MY_DEVICE 0
                            #define MY_CHANNEL 0
                            #define MY_MODE BL_MODE_FAST
                            #define MY_RATE 1000000                         /* capture sample rate */
                            #define MY_SIZE 4                               /* number of samples to capture */
                            
                            int main()
                            {
                                cout << "Hello World!" << endl;
                               void BL_Initialize();
                               
                               /* optional, default BL_ZERO */
                               // BL_Delay(BL_ZERO);                          /* optional, default BL_ZERO */
                               // BL_Rate(MY_RATE);                           /* optional, default BL_MAX_RATE */
                               // BL_Size(MY_SIZE);                           /* optional, default BL_MAX_SIZE */
                               // BL_Select(BL_SELECT_CHANNEL,MY_CHANNEL);    /* choose the channel */
                               // BL_Trigger(BL_ZERO,BL_TRIG_RISE);           /* optional when untriggered */
                               // BL_Select(BL_SELECT_SOURCE,BL_SOURCE_POD);  /* use the POD input */
                               // BL_Range(BL_Count(BL_COUNT_RANGE));         /* maximum range */
                              //  BL_Offset(BL_ZERO);                         /* optional, default 0 */
                              //  BL_Enable(true);
                                return 0;
                            }
                            
                            //bitlib.h
                            /* bitlib.h -- BitScope Library Version 2.0 FG12CLBR
                             *
                             *     http://bitscope.com/software/library/guide/2.0/
                             *
                             * Copyright (C) 2018 BitScope Designs http://bitscope.com
                             *
                             * You may use this library software for any purpose, or distribute it
                             * or derivative works in any form subject to the terms of the BitScope
                             * Library Software Licence V1.1.
                             */
                            #ifndef _BITLIB_H
                            #define _BITLIB_H
                            
                            #if !defined(__cplusplus) 
                            #ifndef _bool_
                            #define _bool_
                            typedef unsigned int bool;
                            #endif
                            #ifndef TRUE
                            #define TRUE 1
                            #endif
                            #ifndef FALSE
                            #define FALSE 0
                            #endif
                            #endif
                            
                            #ifdef __cplusplus
                            extern "C" {
                            #endif
                            
                             /* magic values */
                            
                            #define BL_MAX_RATE 0       /* request the maximum rate */
                            #define BL_MAX_TIME 0       /* request the maximum time */
                            #define BL_MAX_SIZE 0       /* request the maximum size */
                            #define BL_TRACE_FORCED 0   /* trace without (waiting for) trigger */ 
                            #define BL_TRACE_FOREVER -1 /* trace without timeout (possibly forever) */
                            #define BL_ZERO 0           /* zero volts (ground, reference, etc) */
                            #define BL_ASK -1           /* request a prevailing value */
                            
                             /* select/report tokens */
                            
                                enum { BL_COUNT_DEVICE, BL_COUNT_ANALOG, BL_COUNT_LOGIC, BL_COUNT_RANGE };
                                enum { BL_SELECT_DEVICE, BL_SELECT_CHANNEL, BL_SELECT_SOURCE };
                                enum { BL_STATE_IDLE, BL_STATE_ACTIVE, BL_STATE_DONE, BL_STATE_ERROR };
                                enum { BL_SOURCE_POD, BL_SOURCE_BNC, BL_SOURCE_X10, BL_SOURCE_X20, BL_SOURCE_X50, BL_SOURCE_ALT, BL_SOURCE_GND };
                            	enum { BL_COUPLING_DC, BL_COUPLING_AC, BL_COUPLING_RF };
                                enum { BL_MODE_FAST, BL_MODE_DUAL, BL_MODE_MIXED, BL_MODE_LOGIC, BL_MODE_STREAM };
                            	enum { BL_TRIG_RISE, BL_TRIG_FALL, BL_TRIG_HIGH, BL_TRIG_LOW, BL_TRIG_NONE };
                                enum { BL_VERSION_DEVICE, BL_VERSION_LIBRARY, BL_VERSION_BINDING, BL_VERSION_PLATFORM, BL_VERSION_FRAMEWORK, BL_VERSION_NETWORK };
                            	enum { BL_SYNCHRONOUS, BL_ASYNCHRONOUS };
                            
                             /* Library API | Types */
                                
                                typedef int      ( BL_Acquire_t )         ( int, double * ); 
                                typedef void     ( BL_Close_t )           ( void );
                                typedef int      ( BL_Count_t )           ( int );
                                typedef int      ( BL_Coupling_t )        ( int );
                                typedef double   ( BL_Delay_t )           ( double ); 
                                typedef bool     ( BL_Enable_t )          ( bool); 
                                typedef int      ( BL_Error_t )           ( void );
                                typedef bool     ( BL_Halt_t )            ( void );
                                typedef char *   ( BL_ID_t )              ( void );
                                typedef bool     ( BL_Index_t )           ( int );
                                typedef void     ( BL_Initialize_t )      ( void );
                                typedef double   ( BL_Intro_t )           ( double ); 
                                typedef char *   ( BL_Log_t )             ( void );
                                typedef int      ( BL_Mode_t )            ( int ); 
                                typedef char *   ( BL_Name_t )            ( char * );
                                typedef double   ( BL_Offset_t )          ( double );
                                typedef int      ( BL_Open_t )            ( const char *, int );
                                typedef double   ( BL_Range_t )           ( int );
                                typedef bool     ( BL_Receive_t )         ( char *, int, int );
                                typedef double   ( BL_Rate_t )            ( double );
                                typedef int      ( BL_Select_t )          ( int, int );
                                typedef void     ( BL_Send_t )            ( char *, int );
                                typedef int      ( BL_Size_t )            ( int ); 
                                typedef int      ( BL_State_t )           ( void ); 
                                typedef double   ( BL_Time_t)             ( double );
                                typedef bool     ( BL_Trace_t )           ( double, bool ); 
                                typedef bool     ( BL_Trigger_t )         ( double, int );
                                typedef char *   ( BL_Version_t )         ( int );
                                
                             /* Library API | Function Pointers */
                                
                                BL_Acquire_t BL_Acquire;
                                BL_Close_t BL_Close;
                                BL_Count_t BL_Count;
                                BL_Coupling_t BL_Coupling;
                                BL_Delay_t BL_Delay;
                                BL_Enable_t BL_Enable;
                                BL_Error_t BL_Error;
                                BL_Halt_t BL_Halt;
                                BL_ID_t BL_ID;
                                BL_Initialize_t BL_Initialize;
                                BL_Intro_t BL_Intro;
                                BL_Log_t BL_Log;
                                BL_Mode_t BL_Mode;
                                BL_Name_t BL_Name;
                                BL_Offset_t BL_Offset;
                                BL_Open_t BL_Open;
                                BL_Range_t BL_Range;
                                BL_Rate_t BL_Rate;
                                BL_Receive_t BL_Receive;
                                BL_Select_t BL_Select;
                                BL_Send_t BL_Send;
                                BL_Index_t BL_Index;
                                BL_Size_t BL_Size;
                                BL_State_t BL_State;
                                BL_Time_t BL_Time;
                                BL_Trace_t BL_Trace;
                                BL_Trigger_t BL_Trigger;
                                BL_Version_t BL_Version;
                                    
                            #ifdef __cplusplus
                            }
                            #endif
                            
                            #endif /* _BITLIB_H */
                            
                            
                            J 1 Reply Last reply 16 Sept 2019, 10:22
                            0
                            • A AlexFi
                              16 Sept 2019, 09:23

                              Hello I have problems to use functions of bitlib.lib.
                              I created a project without Qt, a c++ application, in qt-creator 4.9.2 (Community) version and build with the Qt 5.13.0 MinGW 64-bit and qmaxe.exe. It works for the function BL_Initialize() and every function with the return type void. But the others are not working and i get undefined reference to BL_Delay for example. Mabye someone had the same problem and can help me.

                              Thanks in advance for a solution

                              Alex

                              //ConnectBitScope.pro
                              TEMPLATE = app
                              CONFIG += console c++11
                              CONFIG -= app_bundle
                              CONFIG -= qt
                              
                              SOURCES += \
                                      main.cpp
                              HEADERS += \bitlib.h \
                                  bitlib.h
                              
                              
                              INCLUDEPATH +=C:/BitScope64/Library
                              LIBS += -LC:/BitScope64/Library -BitLib
                              
                              
                              
                              //main.cpp
                              #include <iostream>
                              #include <bitlib.h>
                              using namespace std;
                              
                              #define MY_DEVICES 1                            /* open one device only */
                              #define MY_PROBE_FILE ""                        /* default probe file if unspecified */
                              
                              #define MY_DEVICE 0
                              #define MY_CHANNEL 0
                              #define MY_MODE BL_MODE_FAST
                              #define MY_RATE 1000000                         /* capture sample rate */
                              #define MY_SIZE 4                               /* number of samples to capture */
                              
                              int main()
                              {
                                  cout << "Hello World!" << endl;
                                 void BL_Initialize();
                                 
                                 /* optional, default BL_ZERO */
                                 // BL_Delay(BL_ZERO);                          /* optional, default BL_ZERO */
                                 // BL_Rate(MY_RATE);                           /* optional, default BL_MAX_RATE */
                                 // BL_Size(MY_SIZE);                           /* optional, default BL_MAX_SIZE */
                                 // BL_Select(BL_SELECT_CHANNEL,MY_CHANNEL);    /* choose the channel */
                                 // BL_Trigger(BL_ZERO,BL_TRIG_RISE);           /* optional when untriggered */
                                 // BL_Select(BL_SELECT_SOURCE,BL_SOURCE_POD);  /* use the POD input */
                                 // BL_Range(BL_Count(BL_COUNT_RANGE));         /* maximum range */
                                //  BL_Offset(BL_ZERO);                         /* optional, default 0 */
                                //  BL_Enable(true);
                                  return 0;
                              }
                              
                              //bitlib.h
                              /* bitlib.h -- BitScope Library Version 2.0 FG12CLBR
                               *
                               *     http://bitscope.com/software/library/guide/2.0/
                               *
                               * Copyright (C) 2018 BitScope Designs http://bitscope.com
                               *
                               * You may use this library software for any purpose, or distribute it
                               * or derivative works in any form subject to the terms of the BitScope
                               * Library Software Licence V1.1.
                               */
                              #ifndef _BITLIB_H
                              #define _BITLIB_H
                              
                              #if !defined(__cplusplus) 
                              #ifndef _bool_
                              #define _bool_
                              typedef unsigned int bool;
                              #endif
                              #ifndef TRUE
                              #define TRUE 1
                              #endif
                              #ifndef FALSE
                              #define FALSE 0
                              #endif
                              #endif
                              
                              #ifdef __cplusplus
                              extern "C" {
                              #endif
                              
                               /* magic values */
                              
                              #define BL_MAX_RATE 0       /* request the maximum rate */
                              #define BL_MAX_TIME 0       /* request the maximum time */
                              #define BL_MAX_SIZE 0       /* request the maximum size */
                              #define BL_TRACE_FORCED 0   /* trace without (waiting for) trigger */ 
                              #define BL_TRACE_FOREVER -1 /* trace without timeout (possibly forever) */
                              #define BL_ZERO 0           /* zero volts (ground, reference, etc) */
                              #define BL_ASK -1           /* request a prevailing value */
                              
                               /* select/report tokens */
                              
                                  enum { BL_COUNT_DEVICE, BL_COUNT_ANALOG, BL_COUNT_LOGIC, BL_COUNT_RANGE };
                                  enum { BL_SELECT_DEVICE, BL_SELECT_CHANNEL, BL_SELECT_SOURCE };
                                  enum { BL_STATE_IDLE, BL_STATE_ACTIVE, BL_STATE_DONE, BL_STATE_ERROR };
                                  enum { BL_SOURCE_POD, BL_SOURCE_BNC, BL_SOURCE_X10, BL_SOURCE_X20, BL_SOURCE_X50, BL_SOURCE_ALT, BL_SOURCE_GND };
                              	enum { BL_COUPLING_DC, BL_COUPLING_AC, BL_COUPLING_RF };
                                  enum { BL_MODE_FAST, BL_MODE_DUAL, BL_MODE_MIXED, BL_MODE_LOGIC, BL_MODE_STREAM };
                              	enum { BL_TRIG_RISE, BL_TRIG_FALL, BL_TRIG_HIGH, BL_TRIG_LOW, BL_TRIG_NONE };
                                  enum { BL_VERSION_DEVICE, BL_VERSION_LIBRARY, BL_VERSION_BINDING, BL_VERSION_PLATFORM, BL_VERSION_FRAMEWORK, BL_VERSION_NETWORK };
                              	enum { BL_SYNCHRONOUS, BL_ASYNCHRONOUS };
                              
                               /* Library API | Types */
                                  
                                  typedef int      ( BL_Acquire_t )         ( int, double * ); 
                                  typedef void     ( BL_Close_t )           ( void );
                                  typedef int      ( BL_Count_t )           ( int );
                                  typedef int      ( BL_Coupling_t )        ( int );
                                  typedef double   ( BL_Delay_t )           ( double ); 
                                  typedef bool     ( BL_Enable_t )          ( bool); 
                                  typedef int      ( BL_Error_t )           ( void );
                                  typedef bool     ( BL_Halt_t )            ( void );
                                  typedef char *   ( BL_ID_t )              ( void );
                                  typedef bool     ( BL_Index_t )           ( int );
                                  typedef void     ( BL_Initialize_t )      ( void );
                                  typedef double   ( BL_Intro_t )           ( double ); 
                                  typedef char *   ( BL_Log_t )             ( void );
                                  typedef int      ( BL_Mode_t )            ( int ); 
                                  typedef char *   ( BL_Name_t )            ( char * );
                                  typedef double   ( BL_Offset_t )          ( double );
                                  typedef int      ( BL_Open_t )            ( const char *, int );
                                  typedef double   ( BL_Range_t )           ( int );
                                  typedef bool     ( BL_Receive_t )         ( char *, int, int );
                                  typedef double   ( BL_Rate_t )            ( double );
                                  typedef int      ( BL_Select_t )          ( int, int );
                                  typedef void     ( BL_Send_t )            ( char *, int );
                                  typedef int      ( BL_Size_t )            ( int ); 
                                  typedef int      ( BL_State_t )           ( void ); 
                                  typedef double   ( BL_Time_t)             ( double );
                                  typedef bool     ( BL_Trace_t )           ( double, bool ); 
                                  typedef bool     ( BL_Trigger_t )         ( double, int );
                                  typedef char *   ( BL_Version_t )         ( int );
                                  
                               /* Library API | Function Pointers */
                                  
                                  BL_Acquire_t BL_Acquire;
                                  BL_Close_t BL_Close;
                                  BL_Count_t BL_Count;
                                  BL_Coupling_t BL_Coupling;
                                  BL_Delay_t BL_Delay;
                                  BL_Enable_t BL_Enable;
                                  BL_Error_t BL_Error;
                                  BL_Halt_t BL_Halt;
                                  BL_ID_t BL_ID;
                                  BL_Initialize_t BL_Initialize;
                                  BL_Intro_t BL_Intro;
                                  BL_Log_t BL_Log;
                                  BL_Mode_t BL_Mode;
                                  BL_Name_t BL_Name;
                                  BL_Offset_t BL_Offset;
                                  BL_Open_t BL_Open;
                                  BL_Range_t BL_Range;
                                  BL_Rate_t BL_Rate;
                                  BL_Receive_t BL_Receive;
                                  BL_Select_t BL_Select;
                                  BL_Send_t BL_Send;
                                  BL_Index_t BL_Index;
                                  BL_Size_t BL_Size;
                                  BL_State_t BL_State;
                                  BL_Time_t BL_Time;
                                  BL_Trace_t BL_Trace;
                                  BL_Trigger_t BL_Trigger;
                                  BL_Version_t BL_Version;
                                      
                              #ifdef __cplusplus
                              }
                              #endif
                              
                              #endif /* _BITLIB_H */
                              
                              
                              J Offline
                              J Offline
                              jsulm
                              Lifetime Qt Champion
                              wrote on 16 Sept 2019, 10:22 last edited by
                              #14

                              @alexfi Is there only one library file? Sometimes functionality is spread across several library files.

                              https://forum.qt.io/topic/113070/qt-code-of-conduct

                              A 1 Reply Last reply 16 Sept 2019, 10:37
                              0
                              • Christian EhrlicherC Offline
                                Christian EhrlicherC Offline
                                Christian Ehrlicher
                                Lifetime Qt Champion
                                wrote on 16 Sept 2019, 10:32 last edited by
                                #15

                                @alexfi said in Library doesn't open:

                                -BitLib

                                This is wrong

                                Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                Visit the Qt Academy at https://academy.qt.io/catalog

                                A 1 Reply Last reply 16 Sept 2019, 11:09
                                2
                                • J jsulm
                                  16 Sept 2019, 10:22

                                  @alexfi Is there only one library file? Sometimes functionality is spread across several library files.

                                  A Offline
                                  A Offline
                                  AlexFi
                                  wrote on 16 Sept 2019, 10:37 last edited by
                                  #16

                                  @jsulm
                                  There are two files available. The 64bit version and the 32bit version, I tried both and installed them into the C: programm folder.
                                  after I get the undefinded reference there error there was the collect2.exe error.

                                  1 Reply Last reply
                                  0
                                  • Christian EhrlicherC Christian Ehrlicher
                                    16 Sept 2019, 10:32

                                    @alexfi said in Library doesn't open:

                                    -BitLib

                                    This is wrong

                                    A Offline
                                    A Offline
                                    AlexFi
                                    wrote on 16 Sept 2019, 11:09 last edited by
                                    #17

                                    @christian-ehrlicher
                                    I tried -lBitLib before, but there was the error lBitlib not found. After I changed the to -BitLib it was found. I thought that was linux syntax. Mabe you can help me to get this run.
                                    I installed the library in the C: folder after that I include this two lines in the pro file. i also added the header file in the project

                                    INCLUDEPATH +=C:/BitScope64/Library
                                    
                                    LIBS += -LC:/BitScope64/Library -lBitLib
                                    
                                    

                                    then i receive cannot find lBitLib

                                    the structure of the library folder is following:

                                    ->Library
                                       ->Document
                                       bitlib.def
                                       BitLib.dll
                                       bitlib.h
                                       BitLib.lib
                                       BitLib.pas
                                    
                                    -BitLib.dll
                                    -BitScope.prb
                                    -BitServe.prb
                                    
                                    
                                    P aha_1980A 2 Replies Last reply 16 Sept 2019, 12:18
                                    0
                                    • A AlexFi
                                      16 Sept 2019, 11:09

                                      @christian-ehrlicher
                                      I tried -lBitLib before, but there was the error lBitlib not found. After I changed the to -BitLib it was found. I thought that was linux syntax. Mabe you can help me to get this run.
                                      I installed the library in the C: folder after that I include this two lines in the pro file. i also added the header file in the project

                                      INCLUDEPATH +=C:/BitScope64/Library
                                      
                                      LIBS += -LC:/BitScope64/Library -lBitLib
                                      
                                      

                                      then i receive cannot find lBitLib

                                      the structure of the library folder is following:

                                      ->Library
                                         ->Document
                                         bitlib.def
                                         BitLib.dll
                                         bitlib.h
                                         BitLib.lib
                                         BitLib.pas
                                      
                                      -BitLib.dll
                                      -BitScope.prb
                                      -BitServe.prb
                                      
                                      
                                      P Offline
                                      P Offline
                                      Pablo J. Rogina
                                      wrote on 16 Sept 2019, 12:18 last edited by
                                      #18

                                      @alexfi spolier alert: not tested! Could it be possible you need this? this is, telling the linker to use a library that doesn't follow the libNAME.so convention

                                      Upvote the answer(s) that helped you solve the issue
                                      Use "Topic Tools" button to mark your post as Solved
                                      Add screenshots via postimage.org
                                      Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

                                      A 1 Reply Last reply 16 Sept 2019, 12:46
                                      0
                                      • Christian EhrlicherC Offline
                                        Christian EhrlicherC Offline
                                        Christian Ehrlicher
                                        Lifetime Qt Champion
                                        wrote on 16 Sept 2019, 12:27 last edited by
                                        #19

                                        It's msvc, so according to the docs it must be

                                        LIBS += C:/BitScope64/Library/BitLib.lib

                                        Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                        Visit the Qt Academy at https://academy.qt.io/catalog

                                        aha_1980A 1 Reply Last reply 16 Sept 2019, 12:50
                                        2
                                        • P Pablo J. Rogina
                                          16 Sept 2019, 12:18

                                          @alexfi spolier alert: not tested! Could it be possible you need this? this is, telling the linker to use a library that doesn't follow the libNAME.so convention

                                          A Offline
                                          A Offline
                                          AlexFi
                                          wrote on 16 Sept 2019, 12:46 last edited by
                                          #20

                                          @pablo-j-rogina

                                          I am not sure how to include this correct in my pro. file do you have an example or some explanations for this?

                                          g++ -o build/bin/myapp _mylib.so other_source_files
                                          

                                          Thank you for your help!!!

                                          @Christian-Ehrlicher
                                          I tried this also, but I get the undefined reference.

                                          Thank you also for your help!!!

                                          i also changed the library files from 64bit to 32bit because of that

                                          //qmake: qmake.exe ConnectBitScope.pro -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug"
                                          
                                          P 1 Reply Last reply 16 Sept 2019, 12:48
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved