compiling ZNC 1.8.1 in Debian Buster #949

Open
opened 2026-10-05 04:54:49 +02:00 by adam · 25 comments
Owner

i wanted to update my znc from version 1.7.5 to 1.8.1, unfortunately i get an error with ccmake, make always
znc@v10437:~/build$ make
Scanning dependencies of target version
[ 0%] Built target version
Scanning dependencies of target copy_csocket_h
[ 1%] Generating Csocket.h
[ 1%] Built target copy_csocket_h
Scanning dependencies of target copy_csocket_cc
[ 1%] Generating Csocket.cpp
[ 1%] Built target copy_csocket_cc
Scanning dependencies of target znclib
[ 2%] Building CXX object src/CMakeFiles/znclib.dir/ZNCString.cpp.o
[ 2%] Building CXX object src/CMakeFiles/znclib.dir/znc.cpp.o
In file included from /home/znc/znc-1.8.1/include/znc/Socket.h:21,
from /home/znc/znc-1.8.1/include/znc/Client.h:21,
from /home/znc/znc-1.8.1/include/znc/znc.h:21,
from /home/znc/znc-1.8.1/src/znc.cpp:17:
/home/znc/build/include/znc/Csocket.h:1179:3: error: ‘UConverterToUnicodeArgs’ has not been declared
UConverterToUnicodeArgs* toArgs,
^~~~~~~~~~~~~~~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1182:3: error: ‘UConverterCallbackReason’ has not been declared
UConverterCallbackReason reason,
^~~~~~~~~~~~~~~~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1183:3: error: ‘UErrorCode’ has not been declared
UErrorCode* err );
^~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1185:3: error: ‘UConverterFromUnicodeArgs’ has not been declared
UConverterFromUnicodeArgs* fromArgs,
^~~~~~~~~~~~~~~~~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1186:9: error: ‘UChar’ does not name a type; did you mean ‘char’?
const UChar* codeUnits,
^~~~~
char
/home/znc/build/include/znc/Csocket.h:1188:3: error: ‘UChar32’ has not been declared
UChar32 codePoint,
^~~~~~~
/home/znc/build/include/znc/Csocket.h:1189:3: error: ‘UConverterCallbackReason’ has not been declared
UConverterCallbackReason reason,
^~~~~~~~~~~~~~~~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1190:3: error: ‘UErrorCode’ has not been declared
UErrorCode* err );
^~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1256:2: error: ‘UConverter’ does not name a type
UConverter* m_cnvInt;
^~~~~~~~~~
/home/znc/build/include/znc/Csocket.h:1257:2: error: ‘UConverter’ does not name a type
UConverter* m_cnvExt;
^~~~~~~~~~
In file included from /home/znc/znc-1.8.1/include/znc/Client.h:21,
from /home/znc/znc-1.8.1/include/znc/znc.h:21,
from /home/znc/znc-1.8.1/src/znc.cpp:17:
/home/znc/znc-1.8.1/include/znc/Socket.h:322:28: error: ‘UConverterToUnicodeArgs’ has not been declared
void IcuExtToUCallback(UConverterToUnicodeArgs* toArgs,
^~~~~~~~~~~~~~~~~~~~~~~
/home/znc/znc-1.8.1/include/znc/Socket.h:324:28: error: ‘UConverterCallbackReason’ has not been declared
UConverterCallbackReason reason,
^~~~~~~~~~~~~~~~~~~~~~~~
/home/znc/znc-1.8.1/include/znc/Socket.h:325:28: error: ‘UErrorCode’ has not been declared
UErrorCode* err) override;
^~~~~~~~~~
/home/znc/znc-1.8.1/include/znc/Socket.h:326:30: error: ‘UConverterFromUnicodeArgs’ has not been declared
void IcuExtFromUCallback(UConverterFromUnicodeArgs* fromArgs,
^~~~~~~~~~~~~~~~~~~~~~~~~
/home/znc/znc-1.8.1/include/znc/Socket.h:327:36: error: ‘UChar’ does not name a type; did you mean ‘char’?
const UChar* codeUnits, int32_t length,
^~~~~
char
/home/znc/znc-1.8.1/include/znc/Socket.h:328:30: error: ‘UChar32’ has not been declared
UChar32 codePoint, UConverterCallbackReason reason,
^~~~~~~
/home/znc/znc-1.8.1/include/znc/Socket.h:328:49: error: ‘UConverterCallbackReason’ has not been declared
UChar32 codePoint, UConverterCallbackReason reason,
^~~~~~~~~~~~~~~~~~~~~~~~
/home/znc/znc-1.8.1/include/znc/Socket.h:329:30: error: ‘UErrorCode’ has not been declared
UErrorCode* err) override;
^~~~~~~~~~
/home/znc/znc-1.8.1/src/znc.cpp: In member function ‘CString CZNC::FixupEncoding(const CString&) const’:
/home/znc/znc-1.8.1/src/znc.cpp:2115:5: error: ‘UErrorCode’ was not declared in this scope
UErrorCode e = U_ZERO_ERROR;
^~~~~~~~~~
/home/znc/znc-1.8.1/src/znc.cpp:2116:5: error: ‘UConverter’ was not declared in this scope
UConverter* cnv = ucnv_open(sRealEncoding, &e);
^~~~~~~~~~
/home/znc/znc-1.8.1/src/znc.cpp:2116:5: note: suggested alternative: ‘CServer’
UConverter* cnv = ucnv_open(sRealEncoding, &e);
^~~~~~~~~~
CServer
/home/znc/znc-1.8.1/src/znc.cpp:2116:17: error: ‘cnv’ was not declared in this scope
UConverter* cnv = ucnv_open(sRealEncoding, &e);
^~~
/home/znc/znc-1.8.1/src/znc.cpp:2116:49: error: ‘e’ was not declared in this scope
UConverter* cnv = ucnv_open(sRealEncoding, &e);
^
/home/znc/znc-1.8.1/src/znc.cpp:2116:23: error: ‘ucnv_open’ was not declared in this scope
UConverter* cnv = ucnv_open(sRealEncoding, &e);
^~~~~~~~~
/home/znc/znc-1.8.1/src/znc.cpp:2118:9: error: ‘ucnv_close’ was not declared in this scope
ucnv_close(cnv);
^~~~~~~~~~
/home/znc/znc-1.8.1/src/znc.cpp:2118:9: note: suggested alternative: ‘close’
ucnv_close(cnv);
^~~~~~~~~~
close
/home/znc/znc-1.8.1/src/znc.cpp:2120:9: error: ‘U_FAILURE’ was not declared in this scope
if (U_FAILURE(e)) {
^~~~~~~~~
/home/znc/znc-1.8.1/src/znc.cpp:2120:9: note: suggested alternative: ‘EXIT_FAILURE’
if (U_FAILURE(e)) {
^~~~~~~~~
EXIT_FAILURE
make[2]: *** [src/CMakeFiles/znclib.dir/build.make:81: src/CMakeFiles/znclib.dir/znc.cpp.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:257: src/CMakeFiles/znclib.dir/all] Fehler 2
make: *** [Makefile:130: all] Fehler 2

i wanted to update my znc from version 1.7.5 to 1.8.1, unfortunately i get an error with ccmake, make always znc@v10437:~/build$ make Scanning dependencies of target version [ 0%] Built target version Scanning dependencies of target copy_csocket_h [ 1%] Generating Csocket.h [ 1%] Built target copy_csocket_h Scanning dependencies of target copy_csocket_cc [ 1%] Generating Csocket.cpp [ 1%] Built target copy_csocket_cc Scanning dependencies of target znclib [ 2%] Building CXX object src/CMakeFiles/znclib.dir/ZNCString.cpp.o [ 2%] Building CXX object src/CMakeFiles/znclib.dir/znc.cpp.o In file included from /home/znc/znc-1.8.1/include/znc/Socket.h:21, from /home/znc/znc-1.8.1/include/znc/Client.h:21, from /home/znc/znc-1.8.1/include/znc/znc.h:21, from /home/znc/znc-1.8.1/src/znc.cpp:17: /home/znc/build/include/znc/Csocket.h:1179:3: error: ‘UConverterToUnicodeArgs’ has not been declared UConverterToUnicodeArgs* toArgs, ^~~~~~~~~~~~~~~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1182:3: error: ‘UConverterCallbackReason’ has not been declared UConverterCallbackReason reason, ^~~~~~~~~~~~~~~~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1183:3: error: ‘UErrorCode’ has not been declared UErrorCode* err ); ^~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1185:3: error: ‘UConverterFromUnicodeArgs’ has not been declared UConverterFromUnicodeArgs* fromArgs, ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1186:9: error: ‘UChar’ does not name a type; did you mean ‘char’? const UChar* codeUnits, ^~~~~ char /home/znc/build/include/znc/Csocket.h:1188:3: error: ‘UChar32’ has not been declared UChar32 codePoint, ^~~~~~~ /home/znc/build/include/znc/Csocket.h:1189:3: error: ‘UConverterCallbackReason’ has not been declared UConverterCallbackReason reason, ^~~~~~~~~~~~~~~~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1190:3: error: ‘UErrorCode’ has not been declared UErrorCode* err ); ^~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1256:2: error: ‘UConverter’ does not name a type UConverter* m_cnvInt; ^~~~~~~~~~ /home/znc/build/include/znc/Csocket.h:1257:2: error: ‘UConverter’ does not name a type UConverter* m_cnvExt; ^~~~~~~~~~ In file included from /home/znc/znc-1.8.1/include/znc/Client.h:21, from /home/znc/znc-1.8.1/include/znc/znc.h:21, from /home/znc/znc-1.8.1/src/znc.cpp:17: /home/znc/znc-1.8.1/include/znc/Socket.h:322:28: error: ‘UConverterToUnicodeArgs’ has not been declared void IcuExtToUCallback(UConverterToUnicodeArgs* toArgs, ^~~~~~~~~~~~~~~~~~~~~~~ /home/znc/znc-1.8.1/include/znc/Socket.h:324:28: error: ‘UConverterCallbackReason’ has not been declared UConverterCallbackReason reason, ^~~~~~~~~~~~~~~~~~~~~~~~ /home/znc/znc-1.8.1/include/znc/Socket.h:325:28: error: ‘UErrorCode’ has not been declared UErrorCode* err) override; ^~~~~~~~~~ /home/znc/znc-1.8.1/include/znc/Socket.h:326:30: error: ‘UConverterFromUnicodeArgs’ has not been declared void IcuExtFromUCallback(UConverterFromUnicodeArgs* fromArgs, ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/znc/znc-1.8.1/include/znc/Socket.h:327:36: error: ‘UChar’ does not name a type; did you mean ‘char’? const UChar* codeUnits, int32_t length, ^~~~~ char /home/znc/znc-1.8.1/include/znc/Socket.h:328:30: error: ‘UChar32’ has not been declared UChar32 codePoint, UConverterCallbackReason reason, ^~~~~~~ /home/znc/znc-1.8.1/include/znc/Socket.h:328:49: error: ‘UConverterCallbackReason’ has not been declared UChar32 codePoint, UConverterCallbackReason reason, ^~~~~~~~~~~~~~~~~~~~~~~~ /home/znc/znc-1.8.1/include/znc/Socket.h:329:30: error: ‘UErrorCode’ has not been declared UErrorCode* err) override; ^~~~~~~~~~ /home/znc/znc-1.8.1/src/znc.cpp: In member function ‘CString CZNC::FixupEncoding(const CString&) const’: /home/znc/znc-1.8.1/src/znc.cpp:2115:5: error: ‘UErrorCode’ was not declared in this scope UErrorCode e = U_ZERO_ERROR; ^~~~~~~~~~ /home/znc/znc-1.8.1/src/znc.cpp:2116:5: error: ‘UConverter’ was not declared in this scope UConverter* cnv = ucnv_open(sRealEncoding, &e); ^~~~~~~~~~ /home/znc/znc-1.8.1/src/znc.cpp:2116:5: note: suggested alternative: ‘CServer’ UConverter* cnv = ucnv_open(sRealEncoding, &e); ^~~~~~~~~~ CServer /home/znc/znc-1.8.1/src/znc.cpp:2116:17: error: ‘cnv’ was not declared in this scope UConverter* cnv = ucnv_open(sRealEncoding, &e); ^~~ /home/znc/znc-1.8.1/src/znc.cpp:2116:49: error: ‘e’ was not declared in this scope UConverter* cnv = ucnv_open(sRealEncoding, &e); ^ /home/znc/znc-1.8.1/src/znc.cpp:2116:23: error: ‘ucnv_open’ was not declared in this scope UConverter* cnv = ucnv_open(sRealEncoding, &e); ^~~~~~~~~ /home/znc/znc-1.8.1/src/znc.cpp:2118:9: error: ‘ucnv_close’ was not declared in this scope ucnv_close(cnv); ^~~~~~~~~~ /home/znc/znc-1.8.1/src/znc.cpp:2118:9: note: suggested alternative: ‘close’ ucnv_close(cnv); ^~~~~~~~~~ close /home/znc/znc-1.8.1/src/znc.cpp:2120:9: error: ‘U_FAILURE’ was not declared in this scope if (U_FAILURE(e)) { ^~~~~~~~~ /home/znc/znc-1.8.1/src/znc.cpp:2120:9: note: suggested alternative: ‘EXIT_FAILURE’ if (U_FAILURE(e)) { ^~~~~~~~~ EXIT_FAILURE make[2]: *** [src/CMakeFiles/znclib.dir/build.make:81: src/CMakeFiles/znclib.dir/znc.cpp.o] Fehler 1 make[1]: *** [CMakeFiles/Makefile2:257: src/CMakeFiles/znclib.dir/all] Fehler 2 make: *** [Makefile:130: all] Fehler 2 <!-- github-sync-id:646555155 -->
Author
Owner

Try make clean, and rerun cmake from clean state.

Something is wrong with the optional dependency on libicu

Try make clean, and rerun cmake from clean state. Something is wrong with the optional dependency on libicu <!-- github-comment-id:650449160 -->
Author
Owner

:-( I have tried this unfortunately already more times with different folders.

Prefix : /home/znc/.znc
Prefix : /home/znc/znc_old
Prefix : /home/znc/znc_1_8

and so on

i do
wget https://znc.in/releases/znc-1.8.1.tar.gz
tar xvzf znc-1.8.1.tar.gz
cd znc-1.8.1
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" /home/znc/znc-1.8.1
make

:-( but always this error

:-( I have tried this unfortunately already more times with different folders. Prefix : /home/znc/.znc Prefix : /home/znc/znc_old Prefix : /home/znc/znc_1_8 and so on i do wget https://znc.in/releases/znc-1.8.1.tar.gz tar xvzf znc-1.8.1.tar.gz cd znc-1.8.1 mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" /home/znc/znc-1.8.1 make :-( but always this error <!-- github-comment-id:650465998 -->
Author
Owner

Provide full output. Also cmake --system-information

Provide full output. Also `cmake --system-information` <!-- github-comment-id:650467106 -->
Author
Owner

And don't forget about make VERSOBE=1

And don't forget about `make VERSOBE=1` <!-- github-comment-id:650468064 -->
Author
Owner

cmake.txt
make.txt

i hope this can help

[cmake.txt](https://github.com/znc/znc/files/4840396/cmake.txt) [make.txt](https://github.com/znc/znc/files/4840397/make.txt) i hope this can help <!-- github-comment-id:650548191 -->
Author
Owner

Sorry, it should be VERBOSE, not VERSOBE

I'm still missing output of cmake itself

Sorry, it should be VERBOSE, not VERSOBE I'm still missing output of cmake itself <!-- github-comment-id:650552278 -->
Author
Owner
znc@v10437:~/znc-1.8.1/build$ cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" /home/znc/znc-1.8.1
-- Could NOT find Boost
-- Boost.Locale or gettext (msgfmt) is not found, disabling i18n support
+----------------------------+
| ZNC 1.8.1 configured       |
|                            |
| Prefix    : /home/znc/.znc |
| SSL       : yes            |
| IPv6      : yes            |
| Async DNS : yes            |
| Perl      : no             |
| Python    : no             |
| Tcl       : no             |
| Cyrus     : yes            |
| Charset   : yes            |
| Zlib      : yes            |
| i18n      : no             |
+----------------------------+

Now you can run 'make' to compile ZNC

-- Configuring done
-- Generating done
-- Build files have been written to: /home/znc/znc-1.8.1

the file is make verbose=1
make.txt

``` znc@v10437:~/znc-1.8.1/build$ cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" /home/znc/znc-1.8.1 -- Could NOT find Boost -- Boost.Locale or gettext (msgfmt) is not found, disabling i18n support +----------------------------+ | ZNC 1.8.1 configured | | | | Prefix : /home/znc/.znc | | SSL : yes | | IPv6 : yes | | Async DNS : yes | | Perl : no | | Python : no | | Tcl : no | | Cyrus : yes | | Charset : yes | | Zlib : yes | | i18n : no | +----------------------------+ Now you can run 'make' to compile ZNC -- Configuring done -- Generating done -- Build files have been written to: /home/znc/znc-1.8.1 ``` the file is make verbose=1 [make.txt](https://github.com/znc/znc/files/4841118/make.txt) <!-- github-comment-id:650607995 -->
Author
Owner

in the clean directory please

in the clean directory please <!-- github-comment-id:650608485 -->
Author
Owner

following step I have done
git clone git://github.com/znc/znc.git --recursive
cd znc
mkdir build
znc@v10437:~/znc/build$ cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" -S /home/znc/znc
-- The CXX compiler identification is GNU 8.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Checking for C++11 support
-- Checking for C++11 support - supported
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Checking for 64-bit off_t
-- Checking for 64-bit off_t - present
-- Checking for fseeko/ftello
-- Checking for fseeko/ftello - present
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29")
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1d")
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11")
-- Checking for module 'libsasl2'
-- Found libsasl2, version 2.1.27
-- Checking for module 'icu-uc'
-- Found icu-uc, version 63.1
-- Could NOT find Boost
-- Found Gettext: /usr/bin/msgmerge (found version "0.19.8.1")
-- Boost.Locale or gettext (msgfmt) is not found, disabling i18n support
-- Looking for getopt_long
-- Looking for getopt_long - found
-- Looking for lstat
-- Looking for lstat - found
-- Looking for getpassphrase
-- Looking for getpassphrase - not found
-- Looking for tcsetattr
-- Looking for tcsetattr - found
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for AI_ADDRCONFIG
-- Looking for AI_ADDRCONFIG - found
-- Found Git: /usr/bin/git (found version "2.20.1")
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- Found GoogleTest: /home/znc/znc/third_party/googletest/googletest
-- Found GoogleMock: /home/znc/znc/third_party/googletest/googlemock
+----------------------------+
| ZNC 1.9.x configured |
| |
| Prefix : /home/znc/.znc |
| SSL : yes |
| IPv6 : yes |
| Async DNS : yes |
| Perl : no |
| Python : no |
| Tcl : no |
| Cyrus : yes |
| Charset : yes |
| Zlib : yes |
| i18n : no |
+----------------------------+

Now you can run 'make' to compile ZNC

-- Configuring done
-- Generating done
-- Build files have been written to: /home/znc/znc/build

and now ?

following step I have done git clone git://github.com/znc/znc.git --recursive cd znc mkdir build znc@v10437:~/znc/build$ cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" -S /home/znc/znc -- The CXX compiler identification is GNU 8.3.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Checking for C++11 support -- Checking for C++11 support - supported -- Looking for C++ include pthread.h -- Looking for C++ include pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE -- Checking for 64-bit off_t -- Checking for 64-bit off_t - present -- Checking for fseeko/ftello -- Checking for fseeko/ftello - present -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29") -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1d") -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") -- Checking for module 'libsasl2' -- Found libsasl2, version 2.1.27 -- Checking for module 'icu-uc' -- Found icu-uc, version 63.1 -- Could NOT find Boost -- Found Gettext: /usr/bin/msgmerge (found version "0.19.8.1") -- Boost.Locale or gettext (msgfmt) is not found, disabling i18n support -- Looking for getopt_long -- Looking for getopt_long - found -- Looking for lstat -- Looking for lstat - found -- Looking for getpassphrase -- Looking for getpassphrase - not found -- Looking for tcsetattr -- Looking for tcsetattr - found -- Looking for clock_gettime -- Looking for clock_gettime - found -- Looking for AI_ADDRCONFIG -- Looking for AI_ADDRCONFIG - found -- Found Git: /usr/bin/git (found version "2.20.1") -- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY -- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success -- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY -- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success -- Performing Test COMPILER_HAS_DEPRECATED_ATTR -- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success -- Found GoogleTest: /home/znc/znc/third_party/googletest/googletest -- Found GoogleMock: /home/znc/znc/third_party/googletest/googlemock +----------------------------+ | ZNC 1.9.x configured | | | | Prefix : /home/znc/.znc | | SSL : yes | | IPv6 : yes | | Async DNS : yes | | Perl : no | | Python : no | | Tcl : no | | Cyrus : yes | | Charset : yes | | Zlib : yes | | i18n : no | +----------------------------+ Now you can run 'make' to compile ZNC -- Configuring done -- Generating done -- Build files have been written to: /home/znc/znc/build and now ? <!-- github-comment-id:650609286 -->
Author
Owner

It's VERBOSE, not verbose. Case matters

Your log says "
-- Checking for module 'icu-uc'
-- Found icu-uc, version 63.1"

What do you have in /usr/include/unicode? How did you install icu?

It's VERBOSE, not verbose. Case matters Your log says " -- Checking for module 'icu-uc' -- Found icu-uc, version 63.1" What do you have in /usr/include/unicode? How did you install icu? <!-- github-comment-id:650609739 -->
Author
Owner

icu-devtools ist schon die neueste Version (63.1-6+deb10u1).

unicode.txt
make.txt

icu-devtools ist schon die neueste Version (63.1-6+deb10u1). [unicode.txt](https://github.com/znc/znc/files/4841133/unicode.txt) [make.txt](https://github.com/znc/znc/files/4841129/make.txt) <!-- github-comment-id:650610731 -->
Author
Owner

I couldn't reproduce this on a clean buster image with following packages installed: git libicu-dev g++ cmake pkgconf

Please send the archive with contents of /usr/include/unicode

You can also try to disable the charset conversion via ccmake, but probably other things may be broken on your machine if libicu doesn't have those symbols

I couldn't reproduce this on a clean buster image with following packages installed: git libicu-dev g++ cmake pkgconf Please send the archive with contents of /usr/include/unicode You can also try to disable the charset conversion via ccmake, but probably other things may be broken on your machine if libicu doesn't have those symbols <!-- github-comment-id:650729282 -->
Author
Owner

with a fresh installation i can also install znc, but my server is running too much that i can reinstall it

archiv_unicode.zip

with a fresh installation i can also install znc, but my server is running too much that i can reinstall it [archiv_unicode.zip](https://github.com/znc/znc/files/4842557/archiv_unicode.zip) <!-- github-comment-id:650785516 -->
Author
Owner

That folder looks correct.

Let's try this:

$ echo '#include "unicode/ucnv.h"' > a.cpp
$ /usr/bin/c++ -E a.cpp -o result.cpp
$ cd /home/znc/znc/build/src && /usr/bin/c++ -E  -I/home/znc/znc/include -I/home/znc/znc/build/include  -fPIC   -include znc/zncconfig.h -pthread -std=c++11 -o /tmp/znc.pre.cpp /home/znc/znc/src/znc.cpp

Then post result.cpp and znc.pre.cpp

That folder looks correct. Let's try this: ``` $ echo '#include "unicode/ucnv.h"' > a.cpp $ /usr/bin/c++ -E a.cpp -o result.cpp $ cd /home/znc/znc/build/src && /usr/bin/c++ -E -I/home/znc/znc/include -I/home/znc/znc/build/include -fPIC -include znc/zncconfig.h -pthread -std=c++11 -o /tmp/znc.pre.cpp /home/znc/znc/src/znc.cpp ``` Then post result.cpp and znc.pre.cpp <!-- github-comment-id:651309557 -->
Author
Owner
znc@v10437: ~ # echo '#include "unicode/ucnv.h"' > a.cpp
znc@v10437: ~ # /usr/bin/c++ -E a.cpp -o result.cpp
znc@v10437: ~ # cd /home/znc/znc/build/src && /usr/bin/c++ -E  -I/home/znc/znc/include -I/home/znc/znc/build/include  -fPIC   -include znc/zncconfig.h -pthread -std=c++11 -o /tmp/znc.pre.cpp /home/znc/znc/src/znc.cpp
In file included from /home/znc/znc/include/znc/Client.h:21,
                 from /home/znc/znc/include/znc/znc.h:21,
                 from /home/znc/znc/src/znc.cpp:17:
/home/znc/znc/include/znc/Socket.h:21:10: fatal error: znc/Csocket.h: Datei oder Verzeichnis nicht gefunden
 #include <znc/Csocket.h>
          ^~~~~~~~~~~~~~~
compilation terminated.
``` znc@v10437: ~ # echo '#include "unicode/ucnv.h"' > a.cpp znc@v10437: ~ # /usr/bin/c++ -E a.cpp -o result.cpp znc@v10437: ~ # cd /home/znc/znc/build/src && /usr/bin/c++ -E -I/home/znc/znc/include -I/home/znc/znc/build/include -fPIC -include znc/zncconfig.h -pthread -std=c++11 -o /tmp/znc.pre.cpp /home/znc/znc/src/znc.cpp In file included from /home/znc/znc/include/znc/Client.h:21, from /home/znc/znc/include/znc/znc.h:21, from /home/znc/znc/src/znc.cpp:17: /home/znc/znc/include/znc/Socket.h:21:10: fatal error: znc/Csocket.h: Datei oder Verzeichnis nicht gefunden #include <znc/Csocket.h> ^~~~~~~~~~~~~~~ compilation terminated. ``` <!-- github-comment-id:651318758 -->
Author
Owner

Did you remove the directory already? znc/Csocket.h is supposed to be in /home/znc/znc/build/include according to logs you provided

Did you remove the directory already? `znc/Csocket.h` is supposed to be in `/home/znc/znc/build/include` according to logs you provided <!-- github-comment-id:651320047 -->
Author
Owner

i did
git clone git://github.com/znc/znc.git --recursive
cd znc
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" -S /home/znc/znc
echo '#include "unicode/ucnv.h"' > a.cpp
/usr/bin/c++ -E a.cpp -o result.cpp
cd /home/znc/znc/build/src && /usr/bin/c++ -E -I/home/znc/znc/include -I/home/znc/znc/build/include -fPIC -include znc/zncconfig.h -pthread -std=c++11 -o /tmp/znc.pre.cpp /home/znc/znc/src/znc.cpp

i removed nothing ..

i did git clone git://github.com/znc/znc.git --recursive cd znc mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX="$HOME/.znc" -S /home/znc/znc echo '#include "unicode/ucnv.h"' > a.cpp /usr/bin/c++ -E a.cpp -o result.cpp cd /home/znc/znc/build/src && /usr/bin/c++ -E -I/home/znc/znc/include -I/home/znc/znc/build/include -fPIC -include znc/zncconfig.h -pthread -std=c++11 -o /tmp/znc.pre.cpp /home/znc/znc/src/znc.cpp i removed nothing .. <!-- github-comment-id:651329134 -->
Author
Owner
znc@v10437:~/znc/build$ cat result.cpp 
# 1 "a.cpp"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 1 "<command-line>" 2
# 1 "a.cpp"
# 1 "/usr/include/x86_64-linux-gnu/unicode/ucnv.h" 1 3 4
# 1 "a.cpp" 2

znc_cpp.txt

``` znc@v10437:~/znc/build$ cat result.cpp # 1 "a.cpp" # 1 "<built-in>" # 1 "<command-line>" # 1 "/usr/include/stdc-predef.h" 1 3 4 # 1 "<command-line>" 2 # 1 "a.cpp" # 1 "/usr/include/x86_64-linux-gnu/unicode/ucnv.h" 1 3 4 # 1 "a.cpp" 2 ``` [znc_cpp.txt](https://github.com/znc/znc/files/4847760/znc_cpp.txt) <!-- github-comment-id:651330574 -->
Author
Owner

znc_cpp.txt is the source, I wanted the preprocessed version of it (/tmp/znc.pre.cpp)

result.cpp looks very empty though. It should contain much more.

please show output of this:
$ ls -ld /usr /usr/include /usr/include/x86_64-linux-gnu /usr/include/x86_64-linux-gnu/unicode /usr/include/x86_64-linux-gnu/unicode/ucnv.h

And post /usr/include/stdc-predef.h

znc_cpp.txt is the source, I wanted the preprocessed version of it (/tmp/znc.pre.cpp) result.cpp looks very empty though. It should contain much more. please show output of this: $ ls -ld /usr /usr/include /usr/include/x86_64-linux-gnu /usr/include/x86_64-linux-gnu/unicode /usr/include/x86_64-linux-gnu/unicode/ucnv.h And post /usr/include/stdc-predef.h <!-- github-comment-id:651341469 -->
Author
Owner

root@v10437: ~ # ls -ld /usr /usr/include /usr/include/x86_64-linux-gnu /usr/include/x86_64-linux-gnu/unicode /usr/include/x86_64-linux-gnu/unicode/ucnv.h
drwxr-xr-x 10 root root 4,0K Apr 28 2015 /usr
drwxr-xr-x 53 root root 20K Jun 28 17:41 /usr/include
drwxr-xr-x 11 root root 4,0K Jun 28 17:41 /usr/include/x86_64-linux-gnu
drwxr-xr-x 2 root root 4,0K Jun 28 2017 /usr/include/x86_64-linux-gnu/unicode
-rw-r--r-- 1 root root 0 Jun 28 2017 /usr/include/x86_64-linux-gnu/unicode/ucnv.h

cat /usr/include/stdc-predef.h
/* Copyright (C) 1991-2018 Free Software Foundation, Inc.
   This file is part of the GNU C Library.

   The GNU C Library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.

   The GNU C Library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with the GNU C Library; if not, see
   <http://www.gnu.org/licenses/>.  */

#ifndef	_STDC_PREDEF_H
#define	_STDC_PREDEF_H	1

/* This header is separate from features.h so that the compiler can
   include it implicitly at the start of every compilation.  It must
   not itself include <features.h> or any other header that includes
   <features.h> because the implicit include comes before any feature
   test macros that may be defined in a source file before it first
   explicitly includes a system header.  GCC knows the name of this
   header in order to preinclude it.  */

/* glibc's intent is to support the IEC 559 math functionality, real
   and complex.  If the GCC (4.9 and later) predefined macros
   specifying compiler intent are available, use them to determine
   whether the overall intent is to support these features; otherwise,
   presume an older compiler has intent to support these features and
   define these macros by default.  */

#ifdef __GCC_IEC_559
# if __GCC_IEC_559 > 0
#  define __STDC_IEC_559__		1
# endif
#else
# define __STDC_IEC_559__		1
#endif

#ifdef __GCC_IEC_559_COMPLEX
# if __GCC_IEC_559_COMPLEX > 0
#  define __STDC_IEC_559_COMPLEX__	1
# endif
#else
# define __STDC_IEC_559_COMPLEX__	1
#endif

/* wchar_t uses Unicode 10.0.0.  Version 10.0 of the Unicode Standard is
   synchronized with ISO/IEC 10646:2017, fifth edition, plus
   the following additions from Amendment 1 to the fifth edition:
   - 56 emoji characters
   - 285 hentaigana
   - 3 additional Zanabazar Square characters */
#define __STDC_ISO_10646__		201706L

#endif

root@v10437: ~ # ls -ld /usr /usr/include /usr/include/x86_64-linux-gnu /usr/include/x86_64-linux-gnu/unicode /usr/include/x86_64-linux-gnu/unicode/ucnv.h drwxr-xr-x 10 root root 4,0K Apr 28 2015 /usr drwxr-xr-x 53 root root 20K Jun 28 17:41 /usr/include drwxr-xr-x 11 root root 4,0K Jun 28 17:41 /usr/include/x86_64-linux-gnu drwxr-xr-x 2 root root 4,0K Jun 28 2017 /usr/include/x86_64-linux-gnu/unicode -rw-r--r-- 1 root root 0 Jun 28 2017 /usr/include/x86_64-linux-gnu/unicode/ucnv.h ``` cat /usr/include/stdc-predef.h /* Copyright (C) 1991-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ #ifndef _STDC_PREDEF_H #define _STDC_PREDEF_H 1 /* This header is separate from features.h so that the compiler can include it implicitly at the start of every compilation. It must not itself include <features.h> or any other header that includes <features.h> because the implicit include comes before any feature test macros that may be defined in a source file before it first explicitly includes a system header. GCC knows the name of this header in order to preinclude it. */ /* glibc's intent is to support the IEC 559 math functionality, real and complex. If the GCC (4.9 and later) predefined macros specifying compiler intent are available, use them to determine whether the overall intent is to support these features; otherwise, presume an older compiler has intent to support these features and define these macros by default. */ #ifdef __GCC_IEC_559 # if __GCC_IEC_559 > 0 # define __STDC_IEC_559__ 1 # endif #else # define __STDC_IEC_559__ 1 #endif #ifdef __GCC_IEC_559_COMPLEX # if __GCC_IEC_559_COMPLEX > 0 # define __STDC_IEC_559_COMPLEX__ 1 # endif #else # define __STDC_IEC_559_COMPLEX__ 1 #endif /* wchar_t uses Unicode 10.0.0. Version 10.0 of the Unicode Standard is synchronized with ISO/IEC 10646:2017, fifth edition, plus the following additions from Amendment 1 to the fifth edition: - 56 emoji characters - 285 hentaigana - 3 additional Zanabazar Square characters */ #define __STDC_ISO_10646__ 201706L #endif ``` <!-- github-comment-id:651344401 -->
Author
Owner

Okay, I have questions.

  1. Why /usr/include/x86_64-linux-gnu/unicode/ucnv.h exists?
  2. Why /usr/include/x86_64-linux-gnu/unicode/ucnv.h is empty?

What package does this file belongs to?

Okay, I have questions. 1. Why `/usr/include/x86_64-linux-gnu/unicode/ucnv.h` exists? 2. Why `/usr/include/x86_64-linux-gnu/unicode/ucnv.h` is empty? What package does this file belongs to? <!-- github-comment-id:651352430 -->
Author
Owner

i don't know .. i reinstall my server now .. my apache is damaged .. i purge too much :-(

i don't know .. i reinstall my server now .. my apache is damaged .. i purge too much :-( <!-- github-comment-id:651363777 -->
Author
Owner

/home/znc/.znc/bin/znc: error while loading shared libraries: libicuuc.so.52: cannot open shared object file: No such file or directory

I got this before the reinstallation

/home/znc/.znc/bin/znc: error while loading shared libraries: libicuuc.so.52: cannot open shared object file: No such file or directory I got this before the reinstallation <!-- github-comment-id:651380407 -->
Author
Owner

Of course.
If you reinstalled the server, rebuild ZNC with new dependencies.

Of course. If you reinstalled the server, rebuild ZNC with new dependencies. <!-- github-comment-id:651381091 -->
Author
Owner

One thing left to do here: test whether libicu works, not just blindly trust what was gathered from pkg-config

One thing left to do here: test whether libicu works, not just blindly trust what was gathered from pkg-config <!-- github-comment-id:657088931 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/znc#949