Все это происходит в Ubuntu 18.04 с QT Creator 4.5.2. Проект представляет собой проект виджета QT. Я хочу связать со статически связанной библиотекой C++, созданной в netbeans. Но когда я собираю, QT Creator не просто ссылается на статическую библиотеку, он компилирует файл в библиотеке (game.cpp) и генерирует следующую ошибку.
/home/bobp040653/Scrabble/Programming/ScrabbleLib/Game.cpp:9: ошибка: неопределенная ссылка на `ScrabbleLib::Game::TileBag::tileValues'
Я вообще этого не понимаю. Game.o является частью внешней статически связанной библиотеки. Он отлично компилируется под netbeans. Это потому, что библиотека libscrabblelib.a? Это тип библиотеки, который QT не понимает?
Вот копия файла .pro для моего проекта.
#-------------------------------------------------
#
# Project created by QtCreator 2020-03-03T10:32:12
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = TipTopQTW
TEMPLATE = app
# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
SOURCES += \
main.cpp \
tiptop.cpp
HEADERS += \
tiptop.h
FORMS += \
tiptop.ui
unix:!macx: LIBS += -L$$PWD/../ScrabbleLib/dist/Debug/GNU-Linux/ -lscrabblelib
INCLUDEPATH += $$PWD/../ScrabbleLib
DEPENDPATH += $$PWD/../ScrabbleLib
unix:!macx: PRE_TARGETDEPS += $$PWD/../ScrabbleLib/dist/Debug/GNU-Linux/libscrabblelib.a