Проблема с использованием MuParser в проекте Qt Creator для C++C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Проблема с использованием MuParser в проекте Qt Creator для C++

Сообщение Anonymous »

Я пытаюсь включить MuParser в свой проект Qt Creator, но уже довольно долго пытаюсь заставить его работать правильно.
Там, где я сейчас нахожусь, кажется, что это так. по какой-то причине не могу найти несколько символов в библиотеке MuParser, и я не совсем уверен, что с этим делать. Есть ли у кого-нибудь идеи, что я могу сделать, чтобы решить эту проблему?
Я загрузил исходный код в виде ZIP-файла с официального сайта. После извлечения содержимого я добавил в папку каталог «build». В MSYS2 MINGW64 я запускал

Код: Выделить всё

cd (path to muparser folder)/build
cmake .. -DENABLE_SAMPLES=ON -DENABLE_OPENMP=ON -DENABLE_WIDE_CHAR=OFF -DBUILD_SHARED_LIBS=OFF
make
из каталога сборки. В результате была создана статическая библиотека "libmuparser.a".
Я добавил этот файл вместе с заголовками в папку моего проекта в следующей файловой структуре:

Код: Выделить всё

(Project File)->libs->muparser->lib->libmuparser.a
(Project File)->libs->muparser->include->(MuParser Header Files)
Затем в свой файл .pro я добавил

Код: Выделить всё

INCLUDEPATH += $$PWD/libs/muparser/include
LIBS += -L$$PWD/libs/muparser/lib -lmuparser
Однако при попытке собрать проект я получаю следующие сообщения об ошибках:

Код: Выделить всё

collect2.exe:-1: error: ld returned 1 exit status
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: debug/main.o: in function `qMain(int, char**)':
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: debug/main.o: in function `mu::Parser::~Parser()':
collect2.exe: error: ld returned 1 exit status
C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\main.cpp:16: error: undefined reference to `__imp__ZN2mu6ParserC1Ev'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\build\Desktop_Qt_6_7_2_MinGW_64_bit-Debug/../../main.cpp:17: undefined reference to `__imp__ZN2mu10ParserBase9DefineVarERKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEPd'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\build\Desktop_Qt_6_7_2_MinGW_64_bit-Debug/../../main.cpp:18: undefined reference to `__imp__ZN2mu10ParserBase7SetExprERKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\build\Desktop_Qt_6_7_2_MinGW_64_bit-Debug/../../main.cpp:20: undefined reference to `__imp__ZNK2mu10ParserBase4EvalEv'
C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\include\muParser.h:50: error: undefined reference to `__imp__ZTVN2mu6ParserE'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\build\Desktop_Qt_6_7_2_MinGW_64_bit-Debug/../../libs/muparser/include/muParser.h:50: undefined reference to `__imp__ZN2mu10ParserBaseD2Ev'
:-1: error: [Makefile.Debug:72: debug/TestMuParser.exe] Error 1
Error while building\deploying project TestMuParser (kit:-1: Desktop Qt 6.7.2 MinGW 64-bit)
Как уже говорилось ранее, по какой-либо причине не удалось найти несколько символов библиотеки MuParser, хотя я не редактировал ни один из файлов заголовков в том виде, в котором они были загружены. Может ли это быть проблемой со сборкой libmuparser.a?
РЕДАКТИРОВАТЬ
Было предложено удалить предыдущее обновление с моими дополнительными ошибками и найти команда связывания, которая вызвала мои первоначальные ошибки. Хотя я не вижу ни одной команды точной формы /some/path/x86_64-w64-mingw32-g++ -o debug/TestMuParser.exe..., я вижу несколько похожих строк. Являются ли какие-либо из них командой компоновщика? В частности, первая строка четвертого поля ниже выглядит так, как будто это команда компоновщика.

Код: Выделить всё

C:/Qt/Tools/mingw1120_64/bin/mingw32-make -f Makefile.Debug

Код: Выделить всё

mingw32-make[1]: Entering directory 'C:/Users/Aidan Beecher/Desktop/Qt
Projects/TestMuParser/build/Desktop_Qt_6_7_2_MinGW_64_bit-Debug'

Код: Выделить всё

g++ -c -fno-keep-inline-dllexport -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -
DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -
DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../../../TestMuParser -I. -
I../../libs/muparser/include -IC:/Qt/6.7.2/mingw_64/include -
IC:/Qt/6.7.2/mingw_64/include/QtWidgets -IC:/Qt/6.7.2/mingw_64/include/QtGui -
IC:/Qt/6.7.2/mingw_64/include/QtCore -Idebug -I.  -IC:/VulkanSDK/1.3.290.0/include -
IC:/Qt/6.7.2/mingw_64/mkspecs/win32-g++  -o debug\main.o ..\..\main.cpp

Код: Выделить всё

g++ -Wl,-v -Wl,-subsystem,windows -mthreads -o debug\TestMuParser.exe debug/main.o
debug/mainwindow.o debug/moc_mainwindow.o -L"C:\Users\Aidan Beecher\Desktop\Qt
Projects\TestMuParser\libs\muparser\lib" -lmuparser C:\Qt\6.7.2\mingw_64\lib\libQt6Widgets.a
C:\Qt\6.7.2\mingw_64\lib\libQt6Gui.a C:\Qt\6.7.2\mingw_64\lib\libQt6Core.a -lmingw32
C:\Qt\6.7.2\mingw_64\lib\libQt6EntryPoint.a -lshell32
РЕДАКТИРОВАТЬ 2
Если я правильно понимаю ответ Майка Кингхана, хочу ли я использовать статическую библиотеку libmuparser.a в своем коде , мне нужно добавить DEFINES += MUPARSER_STATIC в мой файл .pro. Кажется, это устранило предыдущие ошибки, но теперь я получаю новые ошибки:

Код: Выделить всё

:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x87c0): undefined reference to `omp_get_num_threads'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x87c8): undefined reference to `omp_get_thread_num'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x10d37): undefined reference to `omp_get_max_threads'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x10d4a): undefined reference to `omp_set_num_threads'
:-1: error: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x10d73): undefined reference to `GOMP_parallel'
collect2.exe:-1: error: ld returned 1 exit status
:-1: error: [Makefile.Debug:72: debug/TestMuParser.exe] Error 1
Если я попытаюсь создать библиотеку как общую библиотеку:

Код: Выделить всё

cmake .. -DENABLE_SAMPLES=ON -DENABLE_OPENMP=OFF -DENABLE_WIDE_CHAR=OFF -DBUILD_SHARED_LIBS=ON
Я понимаю

Код: Выделить всё

libmuparser.dll.a
msys-muparser-2.dll
но не libmuparser.dll. Должен ли я просто переименовать полученный файл .dll или это не тот файл?
Позвольте мне включить полный вывод компиляции, если это поможет:

Код: Выделить всё

14:12:02: Running steps for project TestMuParser...
14:12:02: Starting: "C:\Qt\6.7.2\mingw_64\bin\qmake.exe" "C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\TestMuParser.pro" -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug"
14:12:03: The process "C:\Qt\6.7.2\mingw_64\bin\qmake.exe" exited normally.
14:12:03: Starting: "C:\Qt\Tools\mingw1120_64\bin\mingw32-make.exe" -f "C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParser/build/Desktop_Qt_6_7_2_MinGW_64_bit-Debug/Makefile" qmake_all
mingw32-make: Nothing to be done for 'qmake_all'.
14:12:03: The process "C:\Qt\Tools\mingw1120_64\bin\mingw32-make.exe" exited normally.
14:12:03: Starting: "C:\Qt\Tools\mingw1120_64\bin\mingw32-make.exe" -j16
C:/Qt/Tools/mingw1120_64/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParser/build/Desktop_Qt_6_7_2_MinGW_64_bit-Debug'
C:\Qt\6.7.2\mingw_64\bin\uic.exe ..\..\mainwindow.ui -o ui_mainwindow.h
g++ -c -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DMUPARSER_STATIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../../../TestMuParser -I. -I../../libs/muparser/include -IC:/Qt/6.7.2/mingw_64/include -IC:/Qt/6.7.2/mingw_64/include/QtWidgets -IC:/Qt/6.7.2/mingw_64/include/QtGui -IC:/Qt/6.7.2/mingw_64/include/QtCore -Idebug -I. -IC:/VulkanSDK/1.3.290.0/include -IC:/Qt/6.7.2/mingw_64/mkspecs/win32-g++  -o debug\main.o ..\..\main.cpp
g++ -c -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DMUPARSER_STATIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../../../TestMuParser -I. -I../../libs/muparser/include -IC:/Qt/6.7.2/mingw_64/include -IC:/Qt/6.7.2/mingw_64/include/QtWidgets -IC:/Qt/6.7.2/mingw_64/include/QtGui -IC:/Qt/6.7.2/mingw_64/include/QtCore -Idebug -I.  -IC:/VulkanSDK/1.3.290.0/include -IC:/Qt/6.7.2/mingw_64/mkspecs/win32-g++  -o debug\mainwindow.o ..\..\mainwindow.cpp
g++ -g -std=gnu++1z -Wall -Wextra -Wextra -dM -E -o debug\moc_predefs.h C:\Qt\6.7.2\mingw_64\mkspecs\features\data\dummy.cpp
C:\Qt\6.7.2\mingw_64\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DMUPARSER_STATIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN --include "C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParser/build/Desktop_Qt_6_7_2_MinGW_64_bit-Debug/debug/moc_predefs.h" -IC:/Qt/6.7.2/mingw_64/mkspecs/win32-g++ -I"C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParser" -I"C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParser/libs/muparser/include" -IC:/Qt/6.7.2/mingw_64/include -IC:/Qt/6.7.2/mingw_64/include/QtWidgets -IC:/Qt/6.7.2/mingw_64/include/QtGui -IC:/Qt/6.7.2/mingw_64/include/QtCore -I. -IC:/Qt/Tools/mingw1120_64/lib/gcc/x86_64-w64-mingw32/11.2.0/include/c++ -IC:/Qt/Tools/mingw1120_64/lib/gcc/x86_64-w64-mingw32/11.2.0/include/c++/x86_64-w64-mingw32 -IC:/Qt/Tools/mingw1120_64/lib/gcc/x86_64-w64-mingw32/11.2.0/include/c++/backward -IC:/Qt/Tools/mingw1120_64/lib/gcc/x86_64-w64-mingw32/11.2.0/include -IC:/Qt/Tools/mingw1120_64/lib/gcc/x86_64-w64-mingw32/11.2.0/include-fixed -IC:/Qt/Tools/mingw1120_64/x86_64-w64-mingw32/include ..\..\mainwindow.h -o debug\moc_mainwindow.cpp
g++ -c -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DMUPARSER_STATIC -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../../../TestMuParser -I. -I../../libs/muparser/include -IC:/Qt/6.7.2/mingw_64/include -IC:/Qt/6.7.2/mingw_64/include/QtWidgets -IC:/Qt/6.7.2/mingw_64/include/QtGui -IC:/Qt/6.7.2/mingw_64/include/QtCore -Idebug -I.  -IC:/VulkanSDK/1.3.290.0/include -IC:/Qt/6.7.2/mingw_64/mkspecs/win32-g++  -o debug\moc_mainwindow.o debug\moc_mainwindow.cpp
..\..\mainwindow.cpp: In member function 'void MainWindow::on_enterFormula_textChanged(const QString&)':
..\..\mainwindow.cpp:16:61: warning: unused parameter 'arg1' [-Wunused-parameter]
16 | void MainWindow::on_enterFormula_textChanged(const QString &arg1)
|                                              ~~~~~~~~~~~~~~~^~~~
..\..\main.cpp: In function 'int qMain(int, char**)':
..\..\main.cpp:15:12: warning: unused variable 'var_a' [-Wunused-variable]
15 |     double var_a = 1;
|            ^~~~~
g++ -Wl,-v -Wl,-subsystem,windows -mthreads -o debug\TestMuParser.exe debug/main.o debug/mainwindow.o debug/moc_mainwindow.o -L"C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib" -lmuparser C:\Qt\6.7.2\mingw_64\lib\libQt6Widgets.a C:\Qt\6.7.2\mingw_64\lib\libQt6Gui.a C:\Qt\6.7.2\mingw_64\lib\libQt6Core.a -lmingw32 C:\Qt\6.7.2\mingw_64\lib\libQt6EntryPoint.a -lshell32
collect2 version 11.2.0
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe -plugin C:/Qt/Tools/mingw1120_64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/liblto_plugin.dll -plugin-opt=C:/Qt/Tools/mingw1120_64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/lto-wrapper.exe -plugin-opt=-fresolution=C:\Users\Aidan Beecher\AppData\Local\Temp\ccrwpgSI.res -plugin-opt=-pass-through=-lmingwthrd -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32 -plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-liconv -plugin-opt=-pass-through=-lmingwthrd -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -plugin-opt=-pass-through=-lkernel32 --sysroot=D:/a/mingw-builds/mingw-builds/buildroot/x86_64-1120-posix-seh-rt_v9-rev3/mingw64 -m i386pep -Bdynamic -o debug\TestMuParser.exe C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/crt2.o C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/crtbegin.o -LC:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib -LC:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0 -LC:/Qt/Tools/mingw1120_64/bin/../lib/gcc -LC:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib -LC:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib -LC:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib -LC:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../..  -v -subsystem windows debug/main.o debug/mainwindow.o debug/moc_mainwindow.o -lmuparser C:\Qt\6.7.2\mingw_64\lib\libQt6Widgets.a C:\Qt\6.7.2\mingw_64\lib\libQt6Gui.a C:\Qt\6.7.2\mingw_64\lib\libQt6Core.a -lmingw32 C:\Qt\6.7.2\mingw_64\lib\libQt6EntryPoint.a -lshell32 -lstdc++ -lmingwthrd -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lkernel32 -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32 -liconv -lmingwthrd -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lkernel32 C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/crtend.o
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x87c0): undefined reference to `omp_get_num_threads'
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x87c8): undefined reference to `omp_get_thread_num'
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x10d37): undefined reference to `omp_get_max_threads'
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x10d4a): undefined reference to `omp_set_num_threads'
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParser\libs\muparser\lib/libmuparser.a(muParserBase.cpp.o):muParserBase.c:(.text+0x10d73): undefined reference to `GOMP_parallel'
GNU ld (GNU Binutils) 2.37
collect2.exe: error: ld returned 1 exit status
mingw32-make[1]: *** [Makefile.Debug:72: debug/TestMuParser.exe] Error 1
mingw32-make: *** [Makefile:45: debug] Error 2
mingw32-make[1]: Leaving directory 'C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParser/build/Desktop_Qt_6_7_2_MinGW_64_bit-Debug'
14:12:05: The process "C:\Qt\Tools\mingw1120_64\bin\mingw32-make.exe" exited with code 2.
Error while building/deploying project TestMuParser (kit: Desktop Qt 6.7.2 MinGW 64-bit)
When executing step "Make"
14:12:05: Elapsed time: 00:03.
РЕДАКТИРОВАНИЕ 3
Дальнейшие предложения не решили проблему. Я попытался посмотреть, может ли использование другой версии MuParser исправить ситуацию. Конкретно я скачал MuParserX:

Код: Выделить всё

git clone https://github.com/beltoforion/muparserx.git
Встроив это в статическую библиотеку (libmuparserx.a), мне действительно удалось заставить ее работать в Visual Studio Code. Я написал пример кода, и он заработал без проблем.
Однако, как ни странно, когда я создал идентичный проект в Qt Creator, он потерпел неудачу и выдал следующие ошибки:

Код: Выделить всё

:-1: error: CMakeFiles/Test.dir/main.cpp.obj:C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:7: undefined reference to `mup::ParserX::ParserX(unsigned int)'
collect2.exe:-1: error: ld returned 1 exit status
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/Test.dir/main.cpp.obj: in function `main':
C:/Qt/Tools/mingw1120_64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/Test.dir/main.cpp.obj: in function `mup::ParserX::~ParserX()':
collect2.exe: error: ld returned 1 exit status
C:\Users\Aidan Beecher\Desktop\Qt Projects\TestMuParserX\main.cpp:8: error: undefined reference to `mup::Value::Value(double)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:9: undefined reference to `mup::Variable::Variable(mup::IValue*)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:10: undefined reference to `mup::ParserXBase::DefineVar(std::__cxx11::basic_string const&, mup::Variable const&)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:12: undefined reference to `mup::ParserXBase::DefineConst(std::__cxx11::basic_string const&, mup::Value const&)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:13: undefined reference to `mup::Value::Value(double)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:13: undefined reference to `mup::ParserXBase::DefineConst(std::__cxx11::basic_string const&, mup::Value const&)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:13: undefined reference to `mup::Value::~Value()'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:15: undefined reference to `mup::ParserXBase::SetExpr(std::__cxx11::basic_string const&)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:16: undefined reference to `mup::ParserXBase::Eval() const'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:16: undefined reference to `mup::Value::Value(mup::IValue const&)'
:-1: error: C:/Users/Aidan Beecher/Desktop/Qt Projects/TestMuParserX/main.cpp:18: undefined reference to `mup::operator

Подробнее здесь: [url]https://stackoverflow.com/questions/79263473/issue-using-muparser-in-qt-creator-project-for-c[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»