cannot find library...
-
@AnneRanch
All qmake variables are explained here. -
@Axel-Spoerl OK - I guess I have to rephrase my post - what doe is do ?
DEFINES
qmake adds the values of this variable as compiler C preprocessor macros (-D option).
For example:
DEFINES += USE_MY_STUFF
-
@AnneRanch said in cannot find library...:
what doe is do ?
It does this:
qmake adds the values of this variable as compiler C preprocessor macros (-D option).
Example:
IfDEFINES
contains the strings "I", "like", "reading", "documentation", the arguments-DI -Dlike -Dreading -Ddocumentation
will be added to the compiler call. That is equivalent to adding this to the source code:#define I #define like #define reading #define documentation
The University of Utah has a wonderful documentation of preprocessor macros.
-
@Axel-Spoerl PLEASE - can we get back to resolving the problem ?
(
apparently Qt use DEFINES to modify the usage of the library
#if defined(TEST_LIBRARY_SUB_LIBRARY)define TEST_LIBRARY_SUB_EXPORT Q_DECL_EXPORT
#else
define TEST_LIBRARY_SUB_EXPORT Q_DECL_IMPORT
#endif
it looks as the "library" is "exported " - which is another item I do not get and I do not know if it is part of the "not finding " issue...
Here is a full compile output - the library is created / build - it is the "include instructions " which must be wrong.
Can some C++ guru help me to find the problem, PLEASE.
11:02:04: Running steps for project TEST_SUBDIRS... 11:02:04: Starting: "/usr/bin/make" clean -j4 cd MAIN_SUB/ && ( test -e Makefile || /home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake -o Makefile /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/MAIN_SUB/MAIN_SUB.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug ) && /usr/bin/make -f Makefile clean cd TEST_LIBRARY_SUB/ && ( test -e Makefile || /home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake -o Makefile /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/TEST_LIBRARY_SUB/TEST_LIBRARY_SUB.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug ) && /usr/bin/make -f Makefile clean make[1]: Entering directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB' rm -f moc_predefs.h rm -f test_library_sub.o rm -f *~ core *.core make[1]: Leaving directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB' make[1]: Entering directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB' rm -f moc_predefs.h rm -f moc_mainwindow.cpp rm -f ui_mainwindow.h rm -f main.o mainwindow.o moc_mainwindow.o rm -f *~ core *.core make[1]: Leaving directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB' 11:02:04: The process "/usr/bin/make" exited normally. 11:02:04: Starting: "/home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake" /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/TEST_SUBDIRS.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug 11:02:04: The process "/home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake" exited normally. 11:02:04: Starting: "/usr/bin/make" -f /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/Makefile qmake_all cd MAIN_SUB/ && /home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake -o Makefile /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/MAIN_SUB/MAIN_SUB.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug cd MAIN_SUB/ && /usr/bin/make -f Makefile qmake_all make[1]: Entering directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB' make[1]: Nothing to be done for 'qmake_all'. make[1]: Leaving directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB' cd TEST_LIBRARY_SUB/ && /home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake -o Makefile /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/TEST_LIBRARY_SUB/TEST_LIBRARY_SUB.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug cd TEST_LIBRARY_SUB/ && /usr/bin/make -f Makefile qmake_all make[1]: Entering directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB' make[1]: Nothing to be done for 'qmake_all'. make[1]: Leaving directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB' 11:02:06: The process "/usr/bin/make" exited normally. 11:02:06: Starting: "/usr/bin/make" -j4 cd MAIN_SUB/ && ( test -e Makefile || /home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake -o Makefile /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/MAIN_SUB/MAIN_SUB.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug ) && /usr/bin/make -f Makefile cd TEST_LIBRARY_SUB/ && ( test -e Makefile || /home/nov25-1/Qt/5.15.2/gcc_64/bin/qmake -o Makefile /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/TEST_LIBRARY_SUB/TEST_LIBRARY_SUB.pro -spec linux-clang CONFIG+=debug CONFIG+=qml_debug ) && /usr/bin/make -f Makefile make[1]: Entering directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB' clang++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DTEST_LIBRARY_SUB_LIBRARY -DQT_QML_DEBUG -DQT_CORE_LIB -I../../TEST_SUBDIRS/TEST_LIBRARY_SUB -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/include -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtCore -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/mkspecs/linux-clang -o test_library_sub.o ../../TEST_SUBDIRS/TEST_LIBRARY_SUB/test_library_sub.cpp make[1]: Entering directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB' /home/nov25-1/Qt/5.15.2/gcc_64/bin/uic ../../TEST_SUBDIRS/MAIN_SUB/mainwindow.ui -o ui_mainwindow.h clang++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../TEST_SUBDIRS/MAIN_SUB -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/include -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtWidgets -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtGui -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtCore -I. -I/usr/include/libdrm -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/mkspecs/linux-clang -o main.o ../../TEST_SUBDIRS/MAIN_SUB/main.cpp clang++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../TEST_SUBDIRS/MAIN_SUB -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/include -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtWidgets -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtGui -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtCore -I. -I/usr/include/libdrm -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/mkspecs/linux-clang -o mainwindow.o ../../TEST_SUBDIRS/MAIN_SUB/mainwindow.cpp clang++ -pipe -g -std=gnu++11 -Wall -Wextra -dM -E -o moc_predefs.h /home/nov25-1/Qt/5.15.2/gcc_64/mkspecs/features/data/dummy.cpp /home/nov25-1/Qt/5.15.2/gcc_64/bin/moc -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB --include /mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB/moc_predefs.h -I/home/nov25-1/Qt/5.15.2/gcc_64/mkspecs/linux-clang -I/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/TEST_SUBDIRS/MAIN_SUB -I/home/nov25-1/Qt/5.15.2/gcc_64/include -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtWidgets -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtGui -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtCore -I. -I/usr/include/c++/11 -I/usr/include/x86_64-linux-gnu/c++/11 -I/usr/include/c++/11/backward -I/usr/lib/llvm-14/lib/clang/14.0.0/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include ../../TEST_SUBDIRS/MAIN_SUB/mainwindow.h -o moc_mainwindow.cpp clang++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../TEST_SUBDIRS/MAIN_SUB -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/include -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtWidgets -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtGui -I/home/nov25-1/Qt/5.15.2/gcc_64/include/QtCore -I. -I/usr/include/libdrm -I. -I/home/nov25-1/Qt/5.15.2/gcc_64/mkspecs/linux-clang -o moc_mainwindow.o moc_mainwindow.cpp rm -f libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so libTEST_LIBRARY_SUB.so.1 libTEST_LIBRARY_SUB.so.1.0 clang++ -ccc-gcc-name g++ -Wl,-rpath,/home/nov25-1/Qt/5.15.2/gcc_64/lib -shared -Wl,-soname,libTEST_LIBRARY_SUB.so.1 -o libTEST_LIBRARY_SUB.so.1.0.0 test_library_sub.o /home/nov25-1/Qt/5.15.2/gcc_64/lib/libQt5Core.so **-lpthread ln -s libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so ln -s libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so.1 ln -s libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so.1.0 make[1]: Leaving directory '/mnt/usb-**Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB' clang++ -ccc-gcc-name g++ -Wl,-rpath,/home/nov25-1/Qt/5.15.2/gcc_64/lib -o MAIN_SUB main.o mainwindow.o moc_mainwindow.o /home/nov25-1/Qt/5.15.2/gcc_64/lib/libQt5Widgets.so /home/nov25-1/Qt/5.15.2/gcc_64/lib/libQt5Gui.so /home/nov25-1/Qt/5.15.2/gcc_64/lib/libQt5Core.so -lGL -lpthread make[1]: Leaving directory '/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/MAIN_SUB' 11:02:14: The process "/usr/bin/make" exited normally. 11:02:14: Elapsed time: 00:10.
-
@AnneRanch said in cannot find library...:
PLEASE - can we get back to resolving the problem ?
A good idea!
We diverted, when you said:Here is my opinion what is the issue
...and started inquiring about
qmake
variables:I would appreciate if somebody would explain the purpose of DEFINES in "shared library" .pro file
and what "creates" the contents of such DEFINESIt made sense to me, to answer your questions first. So let's get back to business :-)
- Thanks for posting the compile output. That's helpful and shows that the libraries have been built, as you rightfully stated.
- The question is, why your SUBDIRS projects don't find them.
Can some C++ guru help
It's certainly not a so much of a C++ issue: The compiler doesn't complain. It's the linker that, at a later point, doesn't find what the compiler has produced.
Let's look at your SUBDIRS project structure, the
.pro
files involved and find the libraries in question. I have asked for some files in an earlier post. We got distracted by the variables. It would be helpful if you could reply to this post. -
@AnneRanch said in cannot find library...:
This part is for Windows. You are building your app on Linux and can therefore ignore it.
#if defined(TEST_LIBRARY_SUB_LIBRARY) define TEST_LIBRARY_SUB_EXPORT Q_DECL_EXPORT #else define TEST_LIBRARY_SUB_EXPORT Q_DECL_IMPORT #endif
-
In the original screen shot I see an error trying to load a shared library named
libBT_Utility_LIbrary.so.1
In the successful make run I see it creates a library namedlibTEST_LIBRARY_SUB.so.1
, so don't how this is related to the message.
Is this significant? -
@JonB
Here is the latest
I have made an error "add library" (IDE option) SOURCE CODE by adding it as "internal" libraryHOWEVER
when ADDED as "external library " (QT makes note it is NOT part of "regular build process ' (??)
I was lead to add .so file BUT such file was NOT located in project structure ( not part regular build process ??)
adding it as .so makes sense , however , QT build .so in ENTIRELY different folder !and THAT is I BELIEVE CAUSED THE WHOLE ISSUE
HENCE
when the SOURCE is added AS INTERNAL LIBRARY , it builds fine <b>BUT the linker has no info where</b>,,, -
@AnneRanch
Although I have not used this, I would imagine that an internal library means that Qt looks for the source code in your project and compiles and links it, while external presumably means you already have the compiled library files quite outside of your project and just specify where it is for your project to link against.If the
.so
files complained about in the error message do exist, whether externally or as a result of internal compilation, then it looks like they are in a path which is not looked in at runtime.@Axel-Spoerl asked earlier for the content of your
.pro
file, presumably so he can understand what is going on. Are you able to post that (as literal text inside```
Code tags so it's readable)? -
I wound like to continue this thread to point out some of the difficulty adding a library to sudir.
As requested ,, here is a copy of .pro AFTER " Add library.. ' option. The code complies and runs.
unix:!macx: LIBS += -L$$PWD/../BT_Utility_Library/ -lBT_Utility_Library
INCLUDEPATH += $$PWD/../BT_Utility_Library
DEPENDPATH += $$PWD/../BT_Utility_Libraryunix:!macx: LIBS += -L$$OUT_PWD/../BT_Utility_Library/ -lBT_Utility_Library
INCLUDEPATH += $$PWD/../BT_Utility_Library
DEPENDPATH += $$PWD/../BT_Utility_Libraryunix:!macx: LIBS += -L$$OUT_PWD/../Bluetoothctl_Dialog/ -lBluetoothctl_Dialog
INCLUDEPATH += $$PWD/../Bluetoothctl_Dialog
DEPENDPATH += $$PWD/../Bluetoothctl_DialogIt seems (works) that the library has to be added as "internal " - as the option is clearly given in "add library " dialog.
Then "compiled" and BEFORE run added AGAIN as external library - ".so " and recompiled and then it will link and run...
The first "compile" builds the .so in different folder-
AND it actually build a folder with " debug" in the name - it brings up a questionWHAT is this ",,,, debug " folder ?
What does it do ?It is clearly NOT given as option in Linux !
Second subject for discussion
it is really nice QT GUI "build / create /compile" hides the actual compiler / linker options , BUT
it would be nice to have an option to show all these "low level " options . I assume there is some kind of configuration file which contains the "low level " commands. -
@AnneRanch Here is an example of "...debug" folder / directory created by compiler :
That basically stops the linker from finding the .so library.
This is just an example...
-
@AnneRanch
I am sure, we can solve your problem if you post all of what I asked you here. Is there a specific reason, why you ignore that request? -
@Axel-Spoerl Yes, apparently you cannot participate in discussion and include what others have posted...
the .pro path has nothing to do with the issue
the compiler output shows WHERE the .so files are
hence location of .so files is already known
the compiler DOES not posts #include errors
( the path for #include is not an issue )
The issue is
why using internal file option creates/ builds the .so files (good) in new , QT created location (BAD ) .Somebody mentioned that " windows debug ..." option does not apply in Linux BUT it sure looks as some other (IDE unknown ) option is creating NEW folder which surprisingly contains "debug" in name ,,,
Lets work on this together and try to go forward with what we know... Cheers -
Here is what we know:
The compiler creates library A:
libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so
in/mnt/usb-**Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/build-TEST_SUBDIRS-Qt_5_15_2_gcc_64-Debug/TEST_LIBRARY_SUB
I creates two symlinks to the library:
ln -s libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so.1 ln -s libTEST_LIBRARY_SUB.so.1.0.0 libTEST_LIBRARY_SUB.so.1.0
We also know, that the linker is instructed to find library B:
libBT_Utility.so.1
in/mnt/usb-Seagate_Expansion_NA833BDC-0:0-part4/BT__PROGRAMS/UTILITY_DEBUG/untitled/untitled
These are two different libraries in two different paths.
In the part that you have elected to share with us, the linker can't find library A.
In the other part you have elected to share with us, the compiler successfully produces library B.
Two separate things, completely unrelated.
@JonB has already pointed at this discrepancy.On a side note:
The first path contains two asterisks betweenusb-
andSeagate
, which is a potential error source.What you know, but we don’t:
-
The very specific linker instruction makes me believe, that library B may actually exist. Maybe it's created in another compile step. If it was my problem on my computer, I'd search for the library on the file system.
-
The linker instruction must be in one (or more) of your
.pro
files. If it was my problem on my computer, I'd inspect them and share them with an expert.
Lets work on this together and try to go forward with what we know.
Sometimes we are baffled with a problem, that is not rooted where we firmly believe it is. Then we need the help of others to look into places, where we haven't looked before - because we were biased by our opinion to look only where we expect the issue to reside. If I may be frank: It is kind of a pattern in your posts, that you refuse requests to shed light to unexpected corners. Some of them might seem overly formal. Some of them might turn out to be useless. They all have one single intention: Understand a problem and solve it.
@AnneRanch said in cannot find library...:
Yes, apparently you cannot participate in discussion and include what others have posted...
Breathe. Smile :-)
-
-
@Axel-Spoerl Thanks, nice summary what was already discussed ..
The ** is part of this posting software BOLD HIGHLIGHT, sorry ...Here is working result of adding libraries to one .pro of the subpro structure -
NONE of them have "debug" added.It is pretty useless without knowing the absolute path to the main subproject .pro
INCLUDEPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_LIBRARY/BT_Utility_Library DEPENDPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_LIBRARY/BT_Utility_Library unix:!macx: LIBS += -L$$OUT_PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/build-BT_FT857_CAT_DEV13_V1-Qt_5_15_2_gcc_64-Debug/BT_LIBRARY/BT_Utility_Library/ -lBT_Utility_Library INCLUDEPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1_LIBRARY/BT_LIBRARY/Bluetoothctl_Dialog DEPENDPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1_LIBRARY/BT_LIBRARY/Bluetoothctl_Dialog unix:!macx: LIBS += -L$$OUT_PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/build-BT_FT857_CAT_DEV13_V1-Qt_5_15_2_gcc_64-Debug/BT_LIBRARY/Bluetoothctl_Dialog/ -lBluetoothctl_Dialog INCLUDEPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_LIBRARY/Bluetoothctl_Dialog DEPENDPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_LIBRARY/Bluetoothctl_Dialog unix:!macx: LIBS += -L$$OUT_PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_MS_LIBRARY/ -lBT_MS_LIBRARY INCLUDEPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_MS_LIBRARY DEPENDPATH += $$PWD/../../../../../../../../mnt/A_BT_DEC10/BT__PROGRAMS/BT_FT857_CAT_DEV13_V1/BT_MS_LIBRARY
-
@AnneRanch Just for info
if I add
"internal" library with both "Linux" and "windows " options - it add this to .prowin32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/BT_LIBRARY/BT_Utility_Library/release/ -lBT_Utility_Library else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/BT_LIBRARY/BT_Utility_Library/debug/ -lBT_Utility_Library else:unix:!macx: LIBS += -L$$OUT_PWD/BT_LIBRARY/BT_Utility_Library/ -lBT_Utility_Library **this is also added - Linux add** INCLUDEPATH += $$PWD/BT_LIBRARY/BT_Utility_Library DEPENDPATH += $$PWD/BT_LIBRARY/BT_Utility_Library
add I get this "else" error when "build" HENCE I CANNOT Accidentally use "windows" options , not without consequence...
-
@AnneRanch said in cannot find library...:
It is pretty useless
Yes. Because you posted the wrong file.
We need the.pro
file containinglibBT_Utility.so.1
in a line starting withLIBS +=
Have you located
libBT_Utility.so.1
in your file system? -
-
@Axel-Spoerl Sorry . I got involved in another issue.
There is no .so info when "add library" is used
HERE
( I believe INCLUDEPATH can be printed but I forgot how )unix:!macx: LIBS += -L$$OUT_PWD/../MS_BASE_CLASS/ -lMS_BASE_CLASS
INCLUDEPATH += $$PWD/../MS_BASE_CLASS
DEPENDPATH += $$PWD/../MS_BASE_CLASSYes. Because you posted the wrong file.
We need the .pro file containing libBT_Utility.so.1 in a line starting with LIBS +=Have you located libBT_Utility.so.1 in your file system?
-
@AnneRanch
Hi Anne,hm. And could you locate any of the libraries on your drive?
(libBT_Utility.so.1
orlibBT_Utility.so.1
)I am insisting on that question for a number of reasons.
- Compilation and linking does quite some heavy lifting on the file system. Building on an external drive puts a bottle neck into the game. It really would be good to know, if everything the compiler says it has done is really done.
- Some of your file paths contain dates (e.g.
DEC10
). Such paths might confuse the linker as well: Something expected in theDEC10
tree, may have been built on another day and be in another tree, e.g.NOV17
. - Maybe you have turned an existing project into a SUBDIRS project. That is likely to change a lot of relative paths.
Brgds
Axel -