Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27

Ошибка с доступом к членам класса библиотеки или что?

15.08.2023, 12:00. Показов 2881. Ответов 53
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Пытаюсь запустить пример кода взаимодействия с базой Postgres из библиотеки fastcgi++. Возникла странная проблема при компиляции – либо не верно установлена библиотека (хотя другие примеры из неё работают), либо в сам код библиотеки вкрались ошибки. Но возможно просто мой косяк, но я не понимаю какой. Дополнительно прописывал инклюды разных файлов, но дело явно не в этом. Прошу помощи.

Привожу код примера:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
#include <fastcgi++/sql/connection.hpp>
#include <fastcgi++/request.hpp>
#include <fastcgi++/log.hpp>
#include <random>
#include <iomanip>
 
class Database: public Fastcgipp::Request<char>
{
private:
    static const std::array<std::string, 8> s_strings;
    static std::random_device s_device;
    static std::uniform_int_distribution<unsigned> s_dist;
 
    static Fastcgipp::SQL::Connection s_connection;
 
    std::shared_ptr<Fastcgipp::SQL::Results<>> m_insertResult;
 
    std::shared_ptr<Fastcgipp::SQL::Results<
        Fastcgipp::SQL::TIMESTAMPTZ,
        Fastcgipp::SQL::INET,
        Fastcgipp::SQL::TEXT>> m_selectResults;
 
    unsigned m_state;
 
public:
    Database():
        m_state(0)
    {}
 
    bool response()
    {
        using Fastcgipp::Encoding;
 
        switch(m_state)
        {
            case 0:
            {
                m_insertResult.reset(new Fastcgipp::SQL::Results<>);
 
                Fastcgipp::SQL::Query query;
                query.statement =
                    "INSERT INTO fastcgipp_example (stamp, address, string) "
                    "VALUES ($1, $2, $3);";
                query.parameters = Fastcgipp::SQL::make_Parameters(
                        std::chrono::time_point_cast<Fastcgipp::SQL::TIMESTAMPTZ::duration>(
                            std::chrono::system_clock::now()),
                        environment().remoteAddress,
                        s_strings[s_dist(s_device)]);
                query.results = m_insertResult;
                query.callback = callback();
 
                if(!s_connection.queue(query))
                {
                    ERROR_LOG("Unable to queue up SQL insert query")
                    errorHandler();
                    return true;
                }
                ++m_state;
                return false;
            }
 
            case 1:
            {
                if(m_insertResult->status() != Fastcgipp::SQL::Status::commandOk)
                {
                    ERROR_LOG("SQL insert gave unexpected status '" \
                            << Fastcgipp::SQL::statusString( \
                                m_insertResult->status()) \
                            << "' with error message '" \
                            <<m_insertResult->errorMessage() << '\'')
                    errorHandler();
                    return true;
                }
                if(m_insertResult->verify() != 0)
                {
                    ERROR_LOG("SQL column verification failed: " << \
                            m_insertResult->verify())
                    errorHandler();
                    return true;
                }
                if(m_insertResult->rows() != 0)
                {
                    ERROR_LOG("SQL insert returned rows when it shouldn't have")
                    errorHandler();
                    return true;
                }
                if(m_insertResult->affectedRows() != 1)
                {
                    ERROR_LOG("SQL insert should have affected 1 row but " \
                            "instead affected " \
                            << m_insertResult->affectedRows() << '.')
                    errorHandler();
                    return true;
                }
 
                m_selectResults.reset(new Fastcgipp::SQL::Results<
                        Fastcgipp::SQL::TIMESTAMPTZ,
                        Fastcgipp::SQL::INET,
                        Fastcgipp::SQL::TEXT>);
                Fastcgipp::SQL::Query query;
                query.statement =
                    "SELECT stamp, address, string FROM fastcgipp_example "
                    "ORDER BY stamp DESC LIMIT 20;";
                query.results = m_selectResults;
                query.callback = callback();
 
                if(!s_connection.queue(query))
                {
                    ERROR_LOG("Unable to queue up SQL select query")
                    errorHandler();
                    return true;
                }
                ++m_state;
                m_insertResult.reset();
                return false;
            }
 
            case 2:
            {
                if(m_selectResults->status() != Fastcgipp::SQL::Status::rowsOk)
                {
                    ERROR_LOG("SQL select gave unexpected status '" \
                            << Fastcgipp::SQL::statusString( \
                                m_selectResults->status()) \
                            << "' with message '" \
                            << m_selectResults->errorMessage() << '\'')
                    errorHandler();
                    return true;
                }
                if(m_selectResults->verify() != 0)
                {
                    ERROR_LOG("SQL column verification failed: " << \
                            m_selectResults->verify())
                    errorHandler();
                    return true;
                }
                if(m_selectResults->rows() == 0)
                {
                    ERROR_LOG("SQL select didn't return rows when it should "\
                            "have")
                    errorHandler();
                    return true;
                }
 
                out <<
"Content-Type: text/html; charset=iso-8859-1\r\n\r\n"
"<!DOCTYPE html>\n"
"<html lang='en'>"
    "<head>"
        "<meta charset='iso-8859-1' />"
        "<title>fastcgi++: Database</title>"
    "</head>"
    "<body>"
        "<table>"
            "<thead>"
                "<tr>"
                    "<th>Timestamp</th>"
                    "<th>IP Address</th>"
                    "<th>Random String</th>"
                "</tr>"
            "</thead>";
 
                for(unsigned index=0; index != m_selectResults->rows(); ++index)
                {
                    const auto& row = m_selectResults->row(index);
                    const auto timestamp = std::chrono::system_clock::to_time_t(
                            std::get<0>(row));
                    out <<
            "<tr>"
                "<td>" 
                    << std::put_time(
                            std::localtime(&timestamp),
                            "%A, %B %e %Y at %H:%M:%S %Z") <<
                "</td>"
                "<td>" << std::get<1>(row) << "</td>"
                "<td>" 
                    << Encoding::HTML << std::get<2>(row) << Encoding::NONE <<
                "</td>"
            "</tr>";
                }
 
                out <<
        "</table>"
    "</body>"
"</html>";
                return true;
            }
        }
 
        return true;
    }
 
    static void start()
    {
        s_connection.init(
                "",
                "fastcgipp_example",
                "fastcgipp_example",
                "fastcgipp_example",
                8);
        s_connection.start();
    }
 
    static void terminate()
    {
        s_connection.terminate();
        s_connection.join();
    }
};
 
const std::array<std::string, 8> Database::s_strings
{
    "Leviathan Wakes",
    "Caliban's War",
    "Abaddon's Gate",
    "Cibola Burn",
    "Nemesis Games",
    "Babylon's Ashes",
    "Persepolis Rising",
    "Tiamat's Wrath"
};
std::random_device Database::s_device;
std::uniform_int_distribution<unsigned> Database::s_dist(0,7);
Fastcgipp::SQL::Connection Database::s_connection;
 
#include <fastcgi++/manager.hpp>
 
int main()
{
    Fastcgipp::Manager<Database> manager;
    manager.setupSignals();
    manager.listen();
    Database::start();
    manager.start();
    manager.join();
    Database::terminate();
 
    return 0;
}
Копмилятор:
g++ (Debian 13.1.0-9) 13.1.0

Команда:
g++ sql.cpp -o test -I/usr/local/include -L/usr/local/lib -pthread -lfastcgipp

Показания flycheck:

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
In "../../../../usr/include/fastcgi++/sql/types.hpp":
‘year_month_day’ in namespace ‘std::chrono’ does not name a type
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
‘sys_days’ was not declared in this scope
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
‘DATE’ was not declared in this scope
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
template argument 1 is invalid
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
‘make_Parameters’ is neither function nor member function; cannot be declared friend
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
expected ‘;’ at end of member declaration
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
expected unqualified-id before ‘<’ token
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
‘make_Parameters’ is neither function nor member function; cannot be declared friend
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
expected ‘;’ at end of member declaration
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
expected unqualified-id before ‘<’ token
In "../../../../usr/include/fastcgi++/sql/parameters.hpp":
‘Fastcgipp::SQL::Parameters<Types>::Parameters(const Types& ...) [with Types = {std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long int, std::ratio<1, 1000000> > >, Fastcgipp::Address, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}]’ is private within this context


Ошибка компиляции:


Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
In file included from /usr/include/fastcgi++/sql/parameters.hpp:32,
                 from /usr/include/fastcgi++/sql/connection.hpp:41,
                 from sql.cpp:5:
/usr/include/fastcgi++/sql/types.hpp:52:30: error: ‘year_month_day’ in namespace ‘std::chrono’ does not name a type
   52 |         typedef std::chrono::year_month_day DATE;
      |                              ^~~~~~~~~~~~~~
/usr/include/fastcgi++/sql/parameters.hpp: In static member function ‘static Fastcgipp::SQL::BIGINT Fastcgipp::SQL::Parameter<std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long int, std::ratio<1, 1000000> > > >::convert(const Fastcgipp::SQL::TIMESTAMPTZ&)’:
/usr/include/fastcgi++/sql/parameters.hpp:169:45: error: ‘sys_days’ was not declared in this scope
  169 |                 constexpr TIMESTAMPTZ epoch(sys_days{January/1/2000});
      |                                             ^~~~~~~~
/usr/include/fastcgi++/sql/parameters.hpp: At global scope:
/usr/include/fastcgi++/sql/parameters.hpp:188:25: error: ‘DATE’ was not declared in this scope
  188 |         class Parameter<DATE>:
      |                         ^~~~
/usr/include/fastcgi++/sql/parameters.hpp:188:29: error: template argument 1 is invalid
  188 |         class Parameter<DATE>:
      |                             ^
/usr/include/fastcgi++/sql/parameters.hpp:501:58: error: ‘make_Parameters’ is neither function nor member function; cannot be declared friend
  501 |             friend std::shared_ptr<Parameters<Types...>> make_Parameters<>(
      |                                                          ^~~~~~~~~~~~~~~
/usr/include/fastcgi++/sql/parameters.hpp:501:58: error: expected ‘;’ at end of member declaration
  501 |             friend std::shared_ptr<Parameters<Types...>> make_Parameters<>(
      |                                                          ^~~~~~~~~~~~~~~
      |                                                                         ;
/usr/include/fastcgi++/sql/parameters.hpp:501:73: error: expected unqualified-id before ‘<’ token
  501 |             friend std::shared_ptr<Parameters<Types...>> make_Parameters<>(
      |                                                                         ^
/usr/include/fastcgi++/sql/parameters.hpp:503:58: error: ‘make_Parameters’ is neither function nor member function; cannot be declared friend
  503 |             friend std::shared_ptr<Parameters<Types...>> make_Parameters<>(
      |                                                          ^~~~~~~~~~~~~~~
/usr/include/fastcgi++/sql/parameters.hpp:503:58: error: expected ‘;’ at end of member declaration
  503 |             friend std::shared_ptr<Parameters<Types...>> make_Parameters<>(
      |                                                          ^~~~~~~~~~~~~~~
      |                                                                         ;
/usr/include/fastcgi++/sql/parameters.hpp:503:73: error: expected unqualified-id before ‘<’ token
  503 |             friend std::shared_ptr<Parameters<Types...>> make_Parameters<>(
      |                                                                         ^
/usr/include/fastcgi++/sql/parameters.hpp: In instantiation of ‘std::shared_ptr<Fastcgipp::SQL::Parameters<Types> > Fastcgipp::SQL::make_Parameters(const Types& ...) [with Types = {std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long int, std::ratio<1, 1000000> > >, Fastcgipp::Address, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}]’:
sql.cpp:69:67:   required from here
/usr/include/fastcgi++/sql/parameters.hpp:512:21: error: ‘Fastcgipp::SQL::Parameters<Types>::Parameters(const Types& ...) [with Types = {std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long int, std::ratio<1, 1000000> > >, Fastcgipp::Address, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >}]’ is private within this context
  512 |                     new Parameters<Types...>(args...));
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/fastcgi++/sql/parameters.hpp:496:13: note: declared private here
  496 |             Parameters(const Types&... args):
      |             ^~~~~~~~~~


Прошу подсказку - как мне это скомпилировать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.08.2023, 12:00
Ответы с готовыми решениями:

Проблемы с доступом к членам класса
Имеется консольный проект, состоящий из 3-х файлов: main.cpp, Classes.h, Classes.cpp. В файлах Classes.h и Classes.cpp описан базовый класс...

Перехватывающая Функция с доступом к статичным членам класса
Возможно ли объявить, Функцию перехватчик таким образом чтобы она имела доступ к переменным класса. Оригинальная функция: void...

Будет доступ, из вложенного класса, к членам включающего класса по this?
Не вызовет ли какую-нибудь ошибку в C++11 и же с ним код: class SOME { public: BYTE x; stuct Z { void fnct(); }...

53
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
17.08.2023, 11:38
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Shooter85 Посмотреть сообщение
в двух местах
Зачем в двух? Нужно только для заголовков сервера.
Кликните здесь для просмотра всего текста
Я думаю проблема в том, что он не может найти сервер, так как не знает о 15 версии.
Как вариант, при конфигурации указать -DPostgreSQL_ADDITIONAL_VERSIONS=15
1
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27
17.08.2023, 18:17  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
Зачем в двух? Нужно только для заголовков сервера.
Кликните здесь для просмотра всего текста
Я думаю проблема в том, что он не может найти сервер, так как не знает о 15 версии.
Как вариант, при конфигурации указать -DPostgreSQL_ADDITIONAL_VERSIONS=15
cmake меняет обратно этот путь при запуске, так что правка не дает результат.
Очистил папку, вызвал cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_BUILD_TYPE=RELEASE -DSQL=true -DPostgreSQL_ADDITIONAL_VERSIONS=15 ../fastcgi++ и запустил по новой.

Увидел версию 15, но выдал другую ошибку:

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
make VERBOSE=1
/usr/bin/cmake -S/home/bro/fastcgi++ -B/home/bro/fastcgipp --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /home/bro/fastcgipp/CMakeFiles /home/bro/fastcgipp//CMakeFiles/progress.marks
make  -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/home/bro/fastcgipp'
make  -f CMakeFiles/fastcgipp.dir/build.make CMakeFiles/fastcgipp.dir/depend
make[2]: Entering directory '/home/bro/fastcgipp'
cd /home/bro/fastcgipp && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/bro/fastcgi++ /home/bro/fastcgi++ /home/bro/fastcgipp /home/bro/fastcgipp /home/bro/fastcgipp/CMakeFiles/fastcgipp.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/home/bro/fastcgipp'
make  -f CMakeFiles/fastcgipp.dir/build.make CMakeFiles/fastcgipp.dir/build
make[2]: Entering directory '/home/bro/fastcgipp'
[  4%] Building CXX object CMakeFiles/fastcgipp.dir/src/log.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/log.cpp.o -MF CMakeFiles/fastcgipp.dir/src/log.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/log.cpp.o -c /home/bro/fastcgi++/src/log.cpp
[  9%] Building CXX object CMakeFiles/fastcgipp.dir/src/block.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/block.cpp.o -MF CMakeFiles/fastcgipp.dir/src/block.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/block.cpp.o -c /home/bro/fastcgi++/src/block.cpp
[ 14%] Building CXX object CMakeFiles/fastcgipp.dir/src/http.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/http.cpp.o -MF CMakeFiles/fastcgipp.dir/src/http.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/http.cpp.o -c /home/bro/fastcgi++/src/http.cpp
[ 19%] Building CXX object CMakeFiles/fastcgipp.dir/src/protocol.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/protocol.cpp.o -MF CMakeFiles/fastcgipp.dir/src/protocol.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/protocol.cpp.o -c /home/bro/fastcgi++/src/protocol.cpp
[ 23%] Building CXX object CMakeFiles/fastcgipp.dir/src/poll.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/poll.cpp.o -MF CMakeFiles/fastcgipp.dir/src/poll.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/poll.cpp.o -c /home/bro/fastcgi++/src/poll.cpp
[ 28%] Building CXX object CMakeFiles/fastcgipp.dir/src/sockets.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/sockets.cpp.o -MF CMakeFiles/fastcgipp.dir/src/sockets.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/sockets.cpp.o -c /home/bro/fastcgi++/src/sockets.cpp
[ 33%] Building CXX object CMakeFiles/fastcgipp.dir/src/transceiver.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/transceiver.cpp.o -MF CMakeFiles/fastcgipp.dir/src/transceiver.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/transceiver.cpp.o -c /home/bro/fastcgi++/src/transceiver.cpp
[ 38%] Building CXX object CMakeFiles/fastcgipp.dir/src/fcgistreambuf.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/fcgistreambuf.cpp.o -MF CMakeFiles/fastcgipp.dir/src/fcgistreambuf.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/fcgistreambuf.cpp.o -c /home/bro/fastcgi++/src/fcgistreambuf.cpp
[ 42%] Building CXX object CMakeFiles/fastcgipp.dir/src/webstreambuf.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/webstreambuf.cpp.o -MF CMakeFiles/fastcgipp.dir/src/webstreambuf.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/webstreambuf.cpp.o -c /home/bro/fastcgi++/src/webstreambuf.cpp
[ 47%] Building CXX object CMakeFiles/fastcgipp.dir/src/request.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/request.cpp.o -MF CMakeFiles/fastcgipp.dir/src/request.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/request.cpp.o -c /home/bro/fastcgi++/src/request.cpp
[ 52%] Building CXX object CMakeFiles/fastcgipp.dir/src/manager.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/manager.cpp.o -MF CMakeFiles/fastcgipp.dir/src/manager.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/manager.cpp.o -c /home/bro/fastcgi++/src/manager.cpp
[ 57%] Building CXX object CMakeFiles/fastcgipp.dir/src/address.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/address.cpp.o -MF CMakeFiles/fastcgipp.dir/src/address.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/address.cpp.o -c /home/bro/fastcgi++/src/address.cpp
[ 61%] Building CXX object CMakeFiles/fastcgipp.dir/src/mailer.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/mailer.cpp.o -MF CMakeFiles/fastcgipp.dir/src/mailer.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/mailer.cpp.o -c /home/bro/fastcgi++/src/mailer.cpp
[ 66%] Building CXX object CMakeFiles/fastcgipp.dir/src/email.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/email.cpp.o -MF CMakeFiles/fastcgipp.dir/src/email.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/email.cpp.o -c /home/bro/fastcgi++/src/email.cpp
[ 71%] Building CXX object CMakeFiles/fastcgipp.dir/src/chunkstreambuf.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/chunkstreambuf.cpp.o -MF CMakeFiles/fastcgipp.dir/src/chunkstreambuf.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/chunkstreambuf.cpp.o -c /home/bro/fastcgi++/src/chunkstreambuf.cpp
[ 76%] Building CXX object CMakeFiles/fastcgipp.dir/src/parameters.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/bro/fastcgipp/include -I/home/bro/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/parameters.cpp.o -MF CMakeFiles/fastcgipp.dir/src/parameters.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/parameters.cpp.o -c /home/bro/fastcgi++/src/parameters.cpp
In file included from /home/bro/fastcgi++/include/sqlTraits.hpp:36,
                 from /home/bro/fastcgi++/src/parameters.cpp:29:
/usr/include/postgresql/15/server/utils/inet.h:40:26: error: ‘AF_INET’ was not declared in this scope; did you mean ‘INET’?
   40 | #define PGSQL_AF_INET6  (AF_INET + 1)
      |                          ^~~~~~~
/home/bro/fastcgi++/include/sqlTraits.hpp:187:51: note: in expansion of macro ‘PGSQL_AF_INET6’
  187 |             static constexpr char addressFamily = PGSQL_AF_INET6;
      |                                                   ^~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/fastcgipp.dir/build.make:286: CMakeFiles/fastcgipp.dir/src/parameters.cpp.o] Error 1
make[2]: Leaving directory '/home/bro/fastcgipp'
make[1]: *** [CMakeFiles/Makefile2:99: CMakeFiles/fastcgipp.dir/all] Error 2
make[1]: Leaving directory '/home/bro/fastcgipp'
make: *** [Makefile:146: all] Error 2
Добавлено через 17 минут
Как понимаю это связано с протоколами IPv4 IPv6 в коде PostgreSQL. Ещё какая-то либа нужна что ли?
0
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
17.08.2023, 18:22
Лучший ответ Сообщение было отмечено Shooter85 как решение

Решение

Цитата Сообщение от Shooter85 Посмотреть сообщение
Как понимаю это связано с протоколами IPv4 IPv6 в коде PostgreSQL. Ещё какая-то либа нужна что ли?
Вообще эта константа (дефайн) из системного инклуда sys/socket.h (у меня в bits/socket.h, который включен в системный).
Должно быть по дефолту, по идее.
1
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27
17.08.2023, 18:26  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
Вообще эта константа (дефайн) из системного инклуда sys/socket.h (у меня в bits/socket.h, который включен в системный).
Должно быть по дефолту, по идее.
Она и в постгрессе тоже есть src/include/utils/inet.h
Походе как стандарт это обозначение в define разработчики разных библиотек используют.
0
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
17.08.2023, 18:38
Shooter85, попробуйте пакет libc6-dev (или какой там у вас) обновить.
1
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27
17.08.2023, 18:53  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
Shooter85, попробуйте пакет libc6-dev (или какой там у вас) обновить.
Bash
1
2
3
4
5
sudo apt-get install --only-upgrade libc6-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libc6-dev is already the newest version (2.37-7).
Не помогло.
0
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
17.08.2023, 19:49
Лучший ответ Сообщение было отмечено Shooter85 как решение

Решение

Shooter85, может у вас там с пакетами какая-то мешанина(конфликты).
На форуме вашу ошибку неудобно диагностировать, если только кто-то с ней уже не сталкивался.

Не по теме:

Я бы первым делом в заголовках и их зависимостях покопался, почему там не видит эту константу.



Добавлено через 5 минут
Цитата Сообщение от Shooter85 Посмотреть сообщение
Возможно это всё связано с переключением на testing репозиторий.
Очень вероятная причина

---

Не по теме:

Shooter85, на крайний случай, если AF_INET определен у вас в sys/socket.h, то попробуйте исходники fastcgi++ подправить, в файле sqlTraits.hpp перед #include <utils/inet.h>(хотя не обязательно перед ним) добавьте #include <sys/socket.h>.

1
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27
17.08.2023, 23:23  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение

Не по теме:

Shooter85, на крайний случай, если AF_INET определен у вас в sys/socket.h, то попробуйте исходники fastcgi++ подправить, в файле sqlTraits.hpp перед #include <utils/inet.h>(хотя не обязательно перед ним) добавьте #include <sys/socket.h>.

Не нашел в нём AF_INET. Всё равно подправил исходник, но не прошло.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[ 14%] Building CXX object CMakeFiles/fastcgipp.dir/src/connection.cpp.o
/usr/bin/c++ -Dfastcgipp_EXPORTS -I/home/user/fastcgipp/include -I/home/user/fastcgi++/include -I/usr/include/postgresql -I/usr/include/postgresql/15/server -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -fno-omit-frame-pointer -MD -MT CMakeFiles/fastcgipp.dir/src/connection.cpp.o -MF CMakeFiles/fastcgipp.dir/src/connection.cpp.o.d -o CMakeFiles/fastcgipp.dir/src/connection.cpp.o -c /home/user/fastcgi++/src/connection.cpp
/home/user/fastcgi++/src/connection.cpp: In member function ‘void Fastcgipp::SQL::Connection::init(const char*, const char*, const char*, const char*, unsigned int, short unsigned int, int, unsigned int)’:
/home/user/fastcgi++/src/connection.cpp:261:20: error: ‘AF_UNIX’ was not declared in this scope
  261 |         socketpair(AF_UNIX, SOCK_STREAM, 0, m_wakeSockets);
      |                    ^~~~~~~
/home/user/fastcgi++/src/connection.cpp:261:29: error: ‘SOCK_STREAM’ was not declared in this scope
  261 |         socketpair(AF_UNIX, SOCK_STREAM, 0, m_wakeSockets);
      |                             ^~~~~~~~~~~
/home/user/fastcgi++/src/connection.cpp:261:9: error: ‘socketpair’ was not declared in this scope; did you mean ‘SYS_socketpair’?
  261 |         socketpair(AF_UNIX, SOCK_STREAM, 0, m_wakeSockets);
      |         ^~~~~~~~~~
      |         SYS_socketpair
make[2]: *** [CMakeFiles/fastcgipp.dir/build.make:314: CMakeFiles/fastcgipp.dir/src/connection.cpp.o] Error 1
make[2]: Leaving directory '/home/user/fastcgipp'
make[1]: *** [CMakeFiles/Makefile2:99: CMakeFiles/fastcgipp.dir/all] Error 2
make[1]: Leaving directory '/home/user/fastcgipp'
make: *** [Makefile:146: all] Error 2
Морально готовлюсь к переустановке системы ... впрочем, уже месяц ищу для этого повод.
0
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
17.08.2023, 23:37
Лучший ответ Сообщение было отмечено Shooter85 как решение

Решение

Не по теме:

Цитата Сообщение от Shooter85 Посмотреть сообщение
Не нашел в нём AF_INET
Поискать можно например так:
Bash
1
g++ -E -dM /usr/include/sys/socket.h | grep AF_INET


Цитата Сообщение от Shooter85 Посмотреть сообщение
Всё равно подправил исходник, но не прошло
В connection.cpp тоже добавьте #include <sys/socket.h>.
Цитата Сообщение от Shooter85 Посмотреть сообщение
Морально готовлюсь к переустановке системы
Это автор библиотеки не учел все возможные платформы, так бывает.
1
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27
18.08.2023, 11:18  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
Это автор библиотеки не учел все возможные платформы, так бывает.
Видимо различие путей это одна из особенностей дебиана. Не первый случай уже когда пути странным образом различаются.
Bash
1
2
3
g++ -E -dM /usr/include/x86_64-linux-gnu/sys/socket.h | grep AF_INET
#define AF_INET6 PF_INET6
#define AF_INET PF_INET
Фактически оно в оказалось в #include <bits/socket.h>

Добавил в connection.cpp
Bash
1
2
3
4
5
6
7
8
9
.....итог
[100%] Linking CXX shared library libfastcgipp.so
/usr/bin/cmake -E cmake_link_script CMakeFiles/fastcgipp.dir/link.txt --verbose=1
/usr/bin/c++ -fPIC -O3 -DNDEBUG -shared -Wl,-soname,libfastcgipp.so.3 -o libfastcgipp.so.3.1 CMakeFiles/fastcgipp.dir/src/log.cpp.o CMakeFiles/fastcgipp.dir/src/block.cpp.o CMakeFiles/fastcgipp.dir/src/http.cpp.o CMakeFiles/fastcgipp.dir/src/protocol.cpp.o CMakeFiles/fastcgipp.dir/src/poll.cpp.o CMakeFiles/fastcgipp.dir/src/sockets.cpp.o CMakeFiles/fastcgipp.dir/src/transceiver.cpp.o CMakeFiles/fastcgipp.dir/src/fcgistreambuf.cpp.o CMakeFiles/fastcgipp.dir/src/webstreambuf.cpp.o CMakeFiles/fastcgipp.dir/src/request.cpp.o CMakeFiles/fastcgipp.dir/src/manager.cpp.o CMakeFiles/fastcgipp.dir/src/address.cpp.o CMakeFiles/fastcgipp.dir/src/mailer.cpp.o CMakeFiles/fastcgipp.dir/src/email.cpp.o CMakeFiles/fastcgipp.dir/src/chunkstreambuf.cpp.o CMakeFiles/fastcgipp.dir/src/parameters.cpp.o CMakeFiles/fastcgipp.dir/src/results.cpp.o CMakeFiles/fastcgipp.dir/src/connection.cpp.o CMakeFiles/fastcgipp.dir/src/curl.cpp.o CMakeFiles/fastcgipp.dir/src/curler.cpp.o  /usr/lib/x86_64-linux-gnu/libpq.so /usr/lib/x86_64-linux-gnu/libcurl.so 
/usr/bin/cmake -E cmake_symlink_library libfastcgipp.so.3.1 libfastcgipp.so.3 libfastcgipp.so
make[2]: Leaving directory '/home/prepre/fastcgipp'
[100%] Built target fastcgipp
make[1]: Leaving directory '/home/prepre/fastcgipp'
/usr/bin/cmake -E cmake_progress_start /home/prepre/fastcgipp/CMakeFiles 0
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
sudo make install
[100%] Built target fastcgipp
Install the project...
-- Install configuration: "RELEASE"
-- Installing: /usr/lib/x86_64-linux-gnu/libfastcgipp.so.3.1
-- Installing: /usr/lib/x86_64-linux-gnu/libfastcgipp.so.3
-- Installing: /usr/lib/x86_64-linux-gnu/libfastcgipp.so
-- Installing: /usr/lib/x86_64-linux-gnu/cmake/Fastcgipp/FastcgippTargets.cmake
-- Installing: /usr/lib/x86_64-linux-gnu/cmake/Fastcgipp/FastcgippTargets-release.cmake
-- Installing: /usr/lib/x86_64-linux-gnu/cmake/Fastcgipp/FastcgippConfig.cmake
-- Installing: /usr/lib/x86_64-linux-gnu/cmake/Fastcgipp/FastcgippConfigVersion.cmake
-- Installing: /usr/include/fastcgi++
-- Installing: /usr/include/fastcgi++/webstreambuf.hpp
-- Installing: /usr/include/fastcgi++/fcgistreambuf.hpp
-- Installing: /usr/include/fastcgi++/message.hpp
-- Installing: /usr/include/fastcgi++/block.hpp
-- Installing: /usr/include/fastcgi++/email.hpp
-- Installing: /usr/include/fastcgi++/transceiver.hpp
-- Installing: /usr/include/fastcgi++/curler.hpp
-- Installing: /usr/include/fastcgi++/chunkstreambuf.hpp
-- Installing: /usr/include/fastcgi++/endian.hpp
-- Installing: /usr/include/fastcgi++/request.hpp
-- Installing: /usr/include/fastcgi++/log.hpp
-- Installing: /usr/include/fastcgi++/curl.hpp
-- Installing: /usr/include/fastcgi++/address.hpp
-- Installing: /usr/include/fastcgi++/manager.hpp
-- Installing: /usr/include/fastcgi++/poll.hpp
-- Installing: /usr/include/fastcgi++/protocol.hpp
-- Installing: /usr/include/fastcgi++/mailer.hpp
-- Installing: /usr/include/fastcgi++/http.hpp
-- Installing: /usr/include/fastcgi++/sockets.hpp
-- Installing: /usr/include/fastcgi++/sql
-- Installing: /usr/include/fastcgi++/sql/types.hpp
-- Installing: /usr/include/fastcgi++/sql/results.hpp
-- Installing: /usr/include/fastcgi++/sql/connection.hpp
-- Installing: /usr/include/fastcgi++/sql/parameters.hpp
-- Installing: /usr/include/fastcgi++/config.hpp
Установилось.

Тэкс, хы-хы... пока всё нормально скомпилировалось (тестить буду позже). Все предложенные варианты компиляции отработали нормально.
Большое спасибо zayats80888 и DrOffset за помощь!

Какой из этого можно сделать вывод? Разработчик библиотеки не предусмотрел файловую архитектуру Debian? Кстати, оттого часто возникают проблемы со всяким софтом, распространяемым через github, который надо через сmake ставить. Про дополнительные либы некоторые забывают указать в мануале про установке.
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
18.08.2023, 11:48
Цитата Сообщение от Shooter85 Посмотреть сообщение
Разработчик библиотеки не предусмотрел файловую архитектуру Debian?
В идеале нужно тестировать под все возможные версии.
Т.е. все версии Debian, все версии Ubuntu, Red Hat, Fedora, Alt и т.п. Все версии Windows под несколько разных компиляторов.
В общем вы сами понимаете, что это невозможно, особенно для открытого проекта, у которого нет коммерческой основы.
Поэтому если вы нашли проблему и сумели ее решить, то лучшим вариантом будет сообщить об этом разработчику. Так вы сможете улучшить ситуацию.
1
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
19.08.2023, 00:01
Вот янаблдал за этим всем.
И что яувидел.
лищь далбаебтво атвора.
ничего больлше
0
 Аватар для Shooter85
0 / 0 / 0
Регистрация: 18.07.2023
Сообщений: 27
19.08.2023, 14:13  [ТС]
Цитата Сообщение от SmallEvil Посмотреть сообщение
Вот янаблдал за этим всем.
И что яувидел.
лищь далбаебтво атвора.
ничего больлше
Хорош флудить! Ты мне чем-то помог, наблюдатель?
В чем именно заключается "далбаебтво атвора" ты не поясняешь. Но должен понимать, что этот раздел для новичков. Я недавно программировать начал (по сути менее года!), многих вещей не знаю и о многом не догадываюсь. Учусь по мере сил. Должен ли я перед тобой расшаркиваться и извиняться за это? Тех, кто мне помогает я благодарю. Если не хочешь зря тратить время на помощь, то пролистывай топик. А просто оскорбить моё незнание в каких-то вопросах - это предельно тупая позиция, и с таким мнением ты можешь идти на йух. Это меня всегда умиляло на русскоговорящих форумах. На англоязычных люди отвечают по делу или молчат.


p.s. модератор, можно закрывать топик, вопрос уже решен, спасибо.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
19.08.2023, 14:21
Цитата Сообщение от Shooter85 Посмотреть сообщение
Хорош флудить! Ты мне чем-то помог, наблюдатель?
Помочь чем ?
Здравому смыслу ?

Добавлено через 1 минуту
Цитата Сообщение от Shooter85 Посмотреть сообщение
p.s. модератор, можно закрывать топик
умиляет такое отношение

Добавлено через 3 минуты
Цитата Сообщение от Shooter85 Посмотреть сообщение
На англоязычных люди отвечают по делу или молчат.
Такое даже не рассматривали бы.
И, на минуточку. ты не там почему-то ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.08.2023, 14:21

Обращение к privat - членам класса из другого класса
Помогите пожалуйста! У меня есть задача. Написал методы которые должны быть в классе Bankomat, но не знаю как обратиться к privat...

Доступ к членам класса класса
Всем привет. Вобщем есть базовый класс, и два производных. Пользователь вводит координаты нужно проверить факт пересечения одной фигуры с...

Доступ к членам класса
Есть два класса: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; class CPerson { /*закрытые члены*/ private:...

Доступ к членам класса
Объект класса не может получить доступ к своим переменным?

Класс внутри класса с доступом к данным первого класса
Есть класс, он содержит в себе функции. Функций этих много и я решил, что было бы удобно их группировать, как-нибудь через структуры или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
54
Ответ Создать тему
Новые блоги и статьи
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет) Содержание проекта Симуляция вековой (50 лет) экологической сукцессии в почве леса Основные участники: АМ-гриб, ЭКМ-гриб,. . .
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru