ars3niy / tdlib-purple

libpurple Telegram plugin using tdlib
Other
147 stars 29 forks source link

Build Error: ‘updateUserChatAction’ in namespace ‘td::td_api’ does not name a type #128

Closed Penaz91 closed 2 years ago

Penaz91 commented 2 years ago

Greetings and thank you for this great plugin!

I'm encountering some build errors (both using my package manager and manual building).

In file included from /home/penaz/tdlib-purple/account-data.h:5,
                 from /home/penaz/tdlib-purple/td-client.h:4,
                 from /home/penaz/tdlib-purple/tdlib-purple.cpp:3:
/home/penaz/tdlib-purple/identifiers.h:49:47: error: ‘updateUserChatAction’ in namespace ‘td::td_api’ does not name a type; did you mean ‘updateChatAction’?
   49 |     friend UserId getUserId(const td::td_api::updateUserChatAction &update);
      |                                               ^~~~~~~~~~~~~~~~~~~~
      |                                               updateChatAction
/home/penaz/tdlib-purple/identifiers.h:61:47: error: ‘updateUserChatAction’ in namespace ‘td::td_api’ does not name a type; did you mean ‘updateChatAction’?
   61 |     friend ChatId getChatId(const td::td_api::updateUserChatAction &update);
      |                                               ^~~~~~~~~~~~~~~~~~~~
      |                                               updateChatAction
/home/penaz/tdlib-purple/identifiers.h:107:42: error: ‘updateUserChatAction’ in namespace ‘td::td_api’ does not name a type; did you mean ‘updateChatAction’?
  107 | UserId       getUserId(const td::td_api::updateUserChatAction &update);
      |                                          ^~~~~~~~~~~~~~~~~~~~
      |                                          updateChatAction
/home/penaz/tdlib-purple/identifiers.h:116:42: error: ‘updateUserChatAction’ in namespace ‘td::td_api’ does not name a type; did you mean ‘updateChatAction’?
  116 | ChatId       getChatId(const td::td_api::updateUserChatAction &update);
      |                                          ^~~~~~~~~~~~~~~~~~~~
      |                                          updateChatAction
In file included from /home/penaz/tdlib-purple/tdlib-purple.cpp:3:
/home/penaz/tdlib-purple/td-client.h:116:55: error: ‘updateUserChatAction’ in namespace ‘td::td_api’ does not name a type; did you mean ‘updateChatAction’?
  116 |     void       handleUserChatAction(const td::td_api::updateUserChatAction &updateChatAction);
      |                                                       ^~~~~~~~~~~~~~~~~~~~
      |                                                       updateChatAction
make[2]: *** [CMakeFiles/telegram-tdlib.dir/build.make:76: CMakeFiles/telegram-tdlib.dir/tdlib-purple.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:304: CMakeFiles/telegram-tdlib.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

Here is some information that may be useful:

I'm available if you need any further information. Thank you in advance.

SchweinDeBurg commented 2 years ago

Temporarily You may use TdLib 1.7.9+ from commit 858078d89fcd2ad1d9860547e3f87c49d0f9abe9 - it woks perfectly.

ars3niy commented 2 years ago

So apparently tdlib must be exactly 1.7.9, I've adjusted requirement to the build script https://github.com/ars3niy/tdlib-purple/commit/f7829a498ac4c0f359bbfdf1001e274196ef2069

It's hard to be compatible with multiple versions since their API is less stable than the one for Linux kernel drivers.