Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

problem with unicode when compiling #206

Open
1o1o1 opened this issue May 24, 2024 · 8 comments
Open

problem with unicode when compiling #206

1o1o1 opened this issue May 24, 2024 · 8 comments

Comments

@1o1o1
Copy link
Contributor

1o1o1 commented May 24, 2024

Verlihub_ERRORS.log

we have a problem with unicode when compiling
Archlihux gcc-14.1.1 & icu-75.1-1

==> Сборка пакета verlihub git.939.006c2ee-1 (Пт 24 мая 2024 23:19:37)
==> Проверка зависимостей для запуска...
==> Проверка зависимостей для сборки...
==> Получение исходных файлов...
-> Клонирование репозитория 'verlihub' (git)...
Клонирование в голый репозиторий «/usr/public/.works/verlihub-git/verlihub»...
-> Найден verlihub.service
-> Найден disable_redirects.patch
-> Найден donat.patch
==> Проверка файлов source с использованием md5sums...
verlihub ... Пропущено
verlihub.service ... Готово
disable_redirects.patch ... Готово
donat.patch ... Готово
==> Распаковка исходных файлов...
-> Создание рабочей копии репозитория 'verlihub' (git)...
Клонирование в «verlihub»...
готово.
==> Запускается prepare()...
patching file share/sql/default_custom_redirects.sql
patching file src/cdcconsole.cpp
==> Запускается pkgver()...
==> Запускается build()...
CMake Deprecation Warning at CMakeLists.txt:19 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.

Update the VERSION argument value or use a ... suffix to tell
CMake that the project does not need compatibility with older versions.

-- The C compiler identification is GNU 14.1.1
-- The CXX compiler identification is GNU 14.1.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done

-- You can change build options with: -D{OPTION}=ON|OFF
-- You can turn on debug build with: -DDEFINE_DEBUG=ON
-- You can disable all plugins with: -DWITH_PLUGINS=OFF
-- NOTE: Plugins other than LUA are now DEPRECATED
-- You can enable or disable specific plugin with: -DWITH_{NAME}=[ON/OFF]
-- Plugin names: LUA PYTHON PERL FORBID CHATROOM IPLOG ISP MESSENGER STATS REPLACER FLOODPROT
-- If you get errors related to autosprintf, please try with: -DUSE_CUSTOM_AUTOSPRINTF=ON

-- [ OK ] Library directory: /usr/lib
-- Found OpenSSL: /usr/lib/libcrypto.so (found suitable version "3.3.0", minimum required is "1.1.0")
-- [ OK ] Found Crypt: /usr/lib/libcrypt.so
-- [ OK ] Found MySQL: /usr/include/mysql, /usr/lib/libmysqlclient.so
-- Found ZLIB: /usr/lib/libz.so (found version "1.3.1")
-- [ OK ] Found MaxMindDB: /usr/include, /usr/lib/libmaxminddb.so
-- [ OK ] Found ICU libraries:
[ OK ] /usr/lib/libicudata.so
[ OK ] /usr/lib/libicui18n.so
[ OK ] /usr/lib/libicuuc.so
[ OK ] /usr/lib/libicuio.so
-- Found ICU: /usr/lib/libicudata.so;/usr/lib/libicui18n.so;/usr/lib/libicuuc.so;/usr/lib/libicuio.so (found version "75.1.0")
-- [ OK ] Found DL: /usr/include, /usr/lib/libdl.a
-- [ OK ] Found PCRE: /usr/include, /usr/lib/libpcre.so;/usr/lib/libpcreposix.so
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Gettext: /usr/bin/msgmerge (found version "0.22.5")
-- Looking for gettext
-- Looking for gettext - found
-- [ OK ] Found GetText: /usr/include
-- Looking for dgettext
-- Looking for dgettext - found
-- Found Libintl: /usr/include
-- [ OK ] Using custom internal autosprintf implementation.
-- Looking for include file errno.h
-- Looking for include file errno.h - found
-- Looking for include file sys/poll.h
-- Looking for include file sys/poll.h - found
-- Looking for include file getopt.h
-- Looking for include file getopt.h - found
-- Looking for include file syslog.h
-- Looking for include file syslog.h - found
-- [ OK ] Build type: Release
-- [ OK ] Generating configuration file: /usr/public/.works/verlihub-git/src/verlihub/build/config.h
-- [ OK ] Generating directory settings file: /usr/public/.works/verlihub-git/src/verlihub/build/dirsettings.h
-- [ OK ] Generating configuration file: /usr/public/.works/verlihub-git/src/verlihub/build/verlihub_config
-- [ OK ] Building PLUGMAN plugin
-- Found Lua: /usr/lib/liblua5.4.so;/usr/lib/libm.so (found suitable version "5.4.6", minimum required is "5.2")
-- [ OK ] Building LUA plugin
-- Not building PYTHON plugin because DEPRECATED, to enable please use: -DWITH_PYTHON=ON
-- Not building PERL plugin because DEPRECATED, to enable please use: -DWITH_PERL=ON
-- Not building FORBID plugin because DEPRECATED, to enable please use: -DWITH_FORBID=ON
-- Not building CHATROOM plugin because DEPRECATED, to enable please use: -DWITH_CHATROOM=ON
-- Not building IPLOG plugin because DEPRECATED, to enable please use: -DWITH_IPLOG=ON
-- Not building ISP plugin because DEPRECATED, to enable please use: -DWITH_ISP=ON
-- Not building MESSENGER plugin because DEPRECATED, to enable please use: -DWITH_MESSENGER=ON
-- Not building STATS plugin because DEPRECATED, to enable please use: -DWITH_STATS=ON
-- Not building REPLACER plugin because DEPRECATED, to enable please use: -DWITH_REPLACER=ON
-- Not building FLOODPROT plugin because DEPRECATED, to enable please use: -DWITH_FLOODPROT=ON
-- Generating vh_daemon
-- Generating vh_lib
-- Generating vh_gui
-- Generating vh
-- Generating vhm
-- Generating vh_regimporter
-- Generating vh_migration_0.9.8eto1.0

-- ========== Build information ==========

-- [ OK ] Hub version: 1.5.0.2
-- [ OK ] CMAKE_INSTALL_PREFIX: /usr
-- [ OK ] Building plugins: 2 of 12
-- [ OK ] Now please run "make" as current user and "make install" as super user.

-- ================= End =================

-- Configuring done (11.5s)
-- Generating done (0.3s)
-- Build files have been written to: /usr/public/.works/verlihub-git/src/verlihub/build
[ 0%] Built target make_time.h
[ 0%] Building CXX object src/CMakeFiles/libverlihub.dir/casyncconn.cpp.o
In file included from /usr/include/unicode/unistr.h:39,
from /usr/include/unicode/translit.h:27,
from /usr/public/.works/verlihub-git/src/verlihub/src/cicuconvert.h:27,
from /usr/public/.works/verlihub-git/src/verlihub/src/cserverdc.h:42,
from /usr/public/.works/verlihub-git/src/verlihub/src/casyncconn.cpp:27:
/usr/include/unicode/stringpiece.h:133:29: ошибка: «enable_if_t» в пространстве имен «std» не именует тип шаблона
133 | typename = std::enable_if_t<
| ^~~~~~~~~~~
/usr/include/unicode/stringpiece.h:133:24: замечание: «std::enable_if_t» is only available from C++14 onwards
133 | typename = std::enable_if_t<
| ^~~
/usr/include/unicode/stringpiece.h:133:40: ошибка: expected «>» before «<» token
133 | typename = std::enable_if_t<
| ^
In file included from /usr/include/unicode/uenum.h:25,
from /usr/include/unicode/utrans.h:22,
from /usr/include/unicode/translit.h:29:
/usr/include/unicode/localpointer.h:561:26: ошибка: параметр декларирован «auto»
561 | template <typename Type, auto closeFunction>
| ^~~~
/usr/include/unicode/localpointer.h:573:76: ошибка: некорректный аргумент шаблона 2
573 | explicit LocalOpenPointer(std::unique_ptr<Type, decltype(closeFunction)> &&p)
| ^
/usr/include/unicode/localpointer.h:583:78: ошибка: некорректный аргумент шаблона 2
583 | LocalOpenPointer &operator=(std::unique_ptr<Type, decltype(closeFunction)> &&p) {
| ^
/usr/include/unicode/localpointer.h:599:59: ошибка: некорректный аргумент шаблона 2
599 | operator std::unique_ptr<Type, decltype(closeFunction)> () && {
| ^
/usr/include/unicode/uenum.h:69:1: замечание: некорректный нетиповый параметр шаблона
69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration, uenum_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/uset.h:358:1: замечание: некорректный нетиповый параметр шаблона
358 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUSetPointer, USet, uset_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/utrans.h:258:1: замечание: некорректный нетиповый параметр шаблона
258 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUTransliteratorPointer, UTransliterator, utrans_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/ucnv.h:597:1: замечание: некорректный нетиповый параметр шаблона
597 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer, UConverter, ucnv_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/CMakeFiles/libverlihub.dir/build.make:76: src/CMakeFiles/libverlihub.dir/casyncconn.cpp.o] Ошибка 1
make[1]: *** [CMakeFiles/Makefile2:281: src/CMakeFiles/libverlihub.dir/all] Ошибка 2
make: *** [Makefile:156: all] Ошибка 2
==> ОШИБКА: Произошел сбой в build().
Прерывание...

@RoLex
Copy link
Member

RoLex commented May 25, 2024

[ICU 75.1]

C++ code now requires C++17 and is being made more robust.

👎

@RoLex
Copy link
Member

RoLex commented May 25, 2024

Same issue as we had with ICU 60 few years ago.

Please play with C++ standard flags:

cmake -DCMAKE_CXX_STANDARD=17 ..

@1o1o1
Copy link
Contributor Author

1o1o1 commented May 30, 2024

:( No! It's not working with cmake -DCMAKE_CXX_STANDARD=xx ..

@RoLex
Copy link
Member

RoLex commented Jun 9, 2024

Please show fresh build log. If you have changed the standard, then you should be able to get rid of error like this one:

/usr/include/unicode/stringpiece.h:133:24: замечание: «std::enable_if_t» is only available from C++14 onwards
133 | typename = std::enable_if_t<

@1o1o1
Copy link
Contributor Author

1o1o1 commented Jun 9, 2024

you will see In file Verlihub_ERRORS.log

@RoLex
Copy link
Member

RoLex commented Jun 9, 2024

==> Сборка пакета verlihub git.939.006c2ee-1 (Пт 24 мая 2024 23:19:37)

This is not fresh log.

@1o1o1
Copy link
Contributor Author

1o1o1 commented Sep 24, 2024

there's still error with new icu-75.1-1 ! :(

[ 0%] Built target make_time.h
[ 0%] Building CXX object src/CMakeFiles/libverlihub.dir/casyncconn.cpp.o
In file included from /usr/include/unicode/unistr.h:39,
from /usr/include/unicode/translit.h:27,
from /srv/apps/verlihub-git/src/verlihub/src/cicuconvert.h:27,
from /srv/apps/verlihub-git/src/verlihub/src/cserverdc.h:42,
from /srv/apps/verlihub-git/src/verlihub/src/casyncconn.cpp:27:
/usr/include/unicode/stringpiece.h:133:29: ошибка: «enable_if_t» в пространстве имен «std» не именует тип шаблона
133 | typename = std::enable_if_t<
| ^~~~~~~~~~~
/usr/include/unicode/stringpiece.h:133:24: замечание: «std::enable_if_t» is only available from C++14 onwards
133 | typename = std::enable_if_t<
| ^~~
/usr/include/unicode/stringpiece.h:133:40: ошибка: expected «>» before «<» token
133 | typename = std::enable_if_t<
| ^
In file included from /usr/include/unicode/uenum.h:25,
from /usr/include/unicode/utrans.h:22,
from /usr/include/unicode/translit.h:29:
/usr/include/unicode/localpointer.h:561:26: ошибка: параметр декларирован «auto»
561 | template <typename Type, auto closeFunction>
| ^~~~
/usr/include/unicode/localpointer.h:573:76: ошибка: некорректный аргумент шаблона 2
573 | explicit LocalOpenPointer(std::unique_ptr<Type, decltype(closeFunction)> &&p)
| ^
/usr/include/unicode/localpointer.h:583:78: ошибка: некорректный аргумент шаблона 2
583 | LocalOpenPointer &operator=(std::unique_ptr<Type, decltype(closeFunction)> &&p) {
| ^
/usr/include/unicode/localpointer.h:599:59: ошибка: некорректный аргумент шаблона 2
599 | operator std::unique_ptr<Type, decltype(closeFunction)> () && {
| ^
/usr/include/unicode/uenum.h:69:1: замечание: некорректный нетиповый параметр шаблона
69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration, uenum_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/uset.h:358:1: замечание: некорректный нетиповый параметр шаблона
358 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUSetPointer, USet, uset_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/utrans.h:258:1: замечание: некорректный нетиповый параметр шаблона
258 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUTransliteratorPointer, UTransliterator, utrans_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/ucnv.h:597:1: замечание: некорректный нетиповый параметр шаблона
597 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer, UConverter, ucnv_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [src/CMakeFiles/libverlihub.dir/build.make:76: src/CMakeFiles/libverlihub.dir/casyncconn.cpp.o] Ошибка 1
make[1]: *** [CMakeFiles/Makefile2:281: src/CMakeFiles/libverlihub.dir/all] Ошибка 2
make: *** [Makefile:156: all] Ошибка 2
==> ОШИБКА: Произошел сбой в build().
Прерывание...

@1o1o1
Copy link
Contributor Author

1o1o1 commented Sep 24, 2024

I had install library icu 74 for working with old compiled pkg verlihub with icu 74
with this pkg make by with AUR https://aur.archlinux.org/packages/icu74

could you make possible to specify the exact files ICU 74 for compiling
(/usr/lib/libicudata.so.74 /usr/lib/libicui18n.so.74 /usr/lib/libicuuc.so.74 /usr/lib/libicuio.so .74)

https://cmake.org/cmake/help/latest/module/FindICU.html

like that its possible?

-- [ OK ] Found ICU libraries:
[ OK ] /usr/lib/libicudata.so.74
[ OK ] /usr/lib/libicui18n.so.74
[ OK ] /usr/lib/libicuuc.so.74
[ OK ] /usr/lib/libicuio.so .74

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants