jenya7 0 31 января, 2022 Опубликовано 31 января, 2022 · Жалоба 43 minutes ago, VladimirG said: Видимо у авторов была на то причина. В любом случае, библиотека собирается на раз. я сделал Quote gcc amx.c amxcore.c amxcons.c amxaux.c ../linux/getch.c -ldl -I../linux -c -fPIC gcc -shared -o aux.so *.o -ldl но у меня создался amx.o а не amx.so. а объектный файл компилятор не видит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladimirG 0 31 января, 2022 Опубликовано 31 января, 2022 (изменено) · Жалоба 48 minutes ago, jenya7 said: gcc -shared -o aux.so *.o -ldl После этой команды, должен появиться aux.so, а не amx.so. Навзвание впрочем не имеет значение, но если хочется подключать через lamx то. 1. изменить -o aux.so на -o libamx.so (или просто перименовать получившийся файл) 2. указать полный путь к сему файлу в /etc/ld.so.conf.d/amx.conf и сделать sudo ldconfig Изменено 31 января, 2022 пользователем VladimirG дополнил Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 31 января, 2022 Опубликовано 31 января, 2022 (изменено) · Жалоба 4 minutes ago, VladimirG said: После этой команды, должен появиться aux.so, а не amx.so а у меня почему то сгенерировался aux.o. Изменено 31 января, 2022 пользователем jenya7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladimirG 0 31 января, 2022 Опубликовано 31 января, 2022 · Жалоба 5 minutes ago, jenya7 said: а у меня почему то сгенерировался aux.o. Никаких ошибок при выполнении команд небыло? У меня gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1+deb9u1) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 31 января, 2022 Опубликовано 31 января, 2022 (изменено) · Жалоба 20 hours ago, VladimirG said: Никаких ошибок при выполнении команд небыло? У меня gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1+deb9u1) попробую ещё раз. нет. ошибок не и so не гененрируется. вот что ответили в поддержке Quote The CMake makefile creates the pawnrun program. This program statically links with amx.o and amxcore.o (plus a few others). But the makefile does not create shared libraries for amx and amxaux. If you want that, you have to adapt the makefiles. а как переделать makefiles? вобщем победил я как то это чудо включив в проект следующее LIBS += -ldl INCLUDEPATH += /home/pi/pawn/amx INCLUDEPATH += /home/pi/pawn/linux SOURCES += /home/pi/pawn/amx/amx.c SOURCES += /home/pi/pawn/amx/amxcore.c SOURCES += /home/pi/pawn/amx/amxcons.c SOURCES += /home/pi/pawn/amx/amxaux.c SOURCES += /home/pi/pawn/linux/getch.c SOURCES += /home/pi/pawn/amx/amxexec_gcc.c теперь вроде как всё компилируется без ошибок. Изменено 1 февраля, 2022 пользователем jenya7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladimirG 0 1 февраля, 2022 Опубликовано 1 февраля, 2022 · Жалоба gcc amx.c amxcore.c amxcons.c amxaux.c ../linux/getch.c -ldl -I../linux -c -fPIC gcc -shared -o amx.so amx.o amxcore.o amxcons.o amxaux.o getch.o -ldl А так? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 1 февраля, 2022 Опубликовано 1 февраля, 2022 · Жалоба 2 hours ago, VladimirG said: gcc amx.c amxcore.c amxcons.c amxaux.c ../linux/getch.c -ldl -I../linux -c -fPIC gcc -shared -o amx.so amx.o amxcore.o amxcons.o amxaux.o getch.o -ldl А так? да! так сгенерировался amx.so я ещё добавил gcc -shared -o amxaux.so amx.o amxcore.o amxcons.o amxaux.o getch.o -ldl теперь все библиотеки сгенерированны. спасибо. приятно иметь дело с профессионалом. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xvr 12 15 февраля, 2022 Опубликовано 15 февраля, 2022 · Жалоба 2 TC - а почему не использовать интерпретатор JS, который из коробки идёт с Qt? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 17 февраля, 2022 Опубликовано 17 февраля, 2022 (изменено) · Жалоба On 2/15/2022 at 3:15 PM, xvr said: 2 TC - а почему не использовать интерпретатор JS, который из коробки идёт с Qt? я не знал. у Qt есть интерпретатор джава скриптов? но мне нужна возможность использовать свои внешние функции в скрипте. Изменено 17 февраля, 2022 пользователем jenya7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gridinp 2 17 февраля, 2022 Опубликовано 17 февраля, 2022 (изменено) · Жалоба 3 часа назад, jenya7 сказал: я не знал. у Qt есть интерпретатор джава скриптов? но мне нужна возможность использовать свои внешние функции в скрипте. В Qt4 есть и можно расширять на C++, но в Qt5 уже вырезали. Модуль называется QtScript Изменено 17 февраля, 2022 пользователем gridinp Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 17 февраля, 2022 Опубликовано 17 февраля, 2022 · Жалоба 34 minutes ago, gridinp said: В Qt4 есть и можно расширять на C++, но в Qt5 уже вырезали. Модуль называется QtScript досада. у меня как раз Qt 5. там есть фичеры которые мне нужны. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gridinp 2 17 февраля, 2022 Опубликовано 17 февраля, 2022 · Жалоба 6 часов назад, jenya7 сказал: досада. у меня как раз Qt 5. там есть фичеры которые мне нужны. я наверное ошибся, вроде как он в Qt5 есть для совместимости Qt Script, вот в Qt6 уже точно нет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 18 февраля, 2022 Опубликовано 18 февраля, 2022 · Жалоба On 2/17/2022 at 6:40 PM, gridinp said: я наверное ошибся, вроде как он в Qt5 есть для совместимости Qt Script, вот в Qt6 уже точно нет предлагают пользоваться QJSEngine вместо Qt Script. посмотрел пример QJSValue fun = myEngine.evaluate("(function(a, b) { return a + b; })"); интересно если я могу вызвать свою внешнюю функцию из скрипта. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться