Fram
Про ошибки при сборке folly тут можно спрашивать?)
🦥Alex Fails
да
🦥Alex Fails
Vladislav
я только через час смогу ответить, за рулем
Fram
Собираю proxygen
На шаге sudo ./deps.sh вот такое
/bin/bash ./libtool --tag=CXX --mode=link g++ -std=gnu++1y -g -O2 -lboost_context -lboost_program_options -lboost_thread -lboost_filesystem -lboost_system -lboost_regex -lpthread -lboost_chrono -lssl -lcrypto -o generate_fingerprint_tables build/GenerateFingerprintTables.o libfollybase.la -lbz2 -llzma -lz -lsnappy -ldl -levent -ldouble-conversion -lglog -lgflags
libtool: link: g++ -std=gnu++1y -g -O2 -o generate_fingerprint_tables build/GenerateFingerprintTables.o ./.libs/libfollybase.a -lboost_context -lboost_program_options -lboost_thread -lboost_filesystem -lboost_system -lboost_regex -lpthread -lboost_chrono -lssl -lcrypto -lbz2 -llzma -lz -lsnappy -ldl -levent -ldouble-conversion -lglog -lgflags
build/GenerateFingerprintTables.o: In function `std::string* google::MakeCheckOpString<unsigned int, unsigned long long>(unsigned int const&, unsigned long long const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
./.libs/libfollybase.a(Conv.o): In function `std::string* google::MakeCheckOpString<unsigned long, unsigned long>(unsigned long const&, unsigned long const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
./.libs/libfollybase.a(Format.o): In function `std::string* google::MakeCheckOpString<int, int>(int const&, int const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
collect2: error: ld returned 1 exit status
На гитхабе советуют установить glog - установлен, cmake - тоже
G++ 4.9.4 Ubuntu 16.04 x86_64
Anonymous
версия glog возможно несовместима или что-то в этом роде
Anonymous
если этот google::base::CheckOpMessageBuilder в glog
Anonymous
то может там его как-нибудь ренеймнули или что-то в этом роде
Anonymous
иди issue оформляй
Anonymous
не ну, сначала пройдись внимательно по инструкциям по сборке, вдруг что-то пропустил
Anonymous
если я правильно понял, чем ты там вообще занимаешься
Ivan
Зачем может понадобиться писать так: http://ideone.com/1wSuY7
Anonymous
Anonymous
думаю да
Anonymous
это единственный способ поймать исключения в списке инициализации в конструкторе класса
Anonymous
другого практического применения не знаю
Vladislav
Собираю proxygen
На шаге sudo ./deps.sh вот такое
/bin/bash ./libtool --tag=CXX --mode=link g++ -std=gnu++1y -g -O2 -lboost_context -lboost_program_options -lboost_thread -lboost_filesystem -lboost_system -lboost_regex -lpthread -lboost_chrono -lssl -lcrypto -o generate_fingerprint_tables build/GenerateFingerprintTables.o libfollybase.la -lbz2 -llzma -lz -lsnappy -ldl -levent -ldouble-conversion -lglog -lgflags
libtool: link: g++ -std=gnu++1y -g -O2 -o generate_fingerprint_tables build/GenerateFingerprintTables.o ./.libs/libfollybase.a -lboost_context -lboost_program_options -lboost_thread -lboost_filesystem -lboost_system -lboost_regex -lpthread -lboost_chrono -lssl -lcrypto -lbz2 -llzma -lz -lsnappy -ldl -levent -ldouble-conversion -lglog -lgflags
build/GenerateFingerprintTables.o: In function `std::string* google::MakeCheckOpString<unsigned int, unsigned long long>(unsigned int const&, unsigned long long const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
./.libs/libfollybase.a(Conv.o): In function `std::string* google::MakeCheckOpString<unsigned long, unsigned long>(unsigned long const&, unsigned long const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
./.libs/libfollybase.a(Format.o): In function `std::string* google::MakeCheckOpString<int, int>(int const&, int const&, char const*)':
/usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
collect2: error: ld returned 1 exit status
На гитхабе советуют установить glog - установлен, cmake - тоже
G++ 4.9.4 Ubuntu 16.04 x86_64
Вангую что либа и хедеры разных версий
Vladislav
Glog
Anonymous
Anonymous
правда всегда удивляюсь, как оно так может получиться
Anonymous
хотя... чтобы понять, достаточно задуматься
Ivan
Почему нельзя внутри функции написать try {...
Ivan
В чём разница?
Anonymous
Anonymous
сейчас, погоди, пример настрочу
Ivan
Anonymous
надо, потомкам будет
Ivan
http://ideone.com/pNIETH вот
Anonymous
тут показывается не то, что я имел ввиду...
Ivan
Anonymous
http://ideone.com/wk6lLU
Ivan
Эх, что-то не ловится
Anonymous
а должно
Ivan
Не-а
Anonymous
а, кажется... черт знает, если честно)
Ivan
What's less obvious, but clearly stated in the standard, is that if the catch block does not throw (either rethrow the original exception, or throw something new), and control reaches the end of the catch block of a constructor or destructor, then the original exception is automatically rethrown.
Anonymous
интересно
Ivan
Там вроде вызывается ещё одно исключение
Ivan
http://www.gotw.ca/gotw/066.htm
JBáruch
Alexander
Да
барух в чатике про cpp :) так скоро и господин Бугаенко подтянется, расскажет что такое ооп в крестах и как оно убого на самом деле :)
Alexander
в джава мире вроде зерно уже посеяно)
JBáruch
Arseny
Судя по гуглу, речь о таком:
https://github.com/yegor256/eo
JBáruch
don't ask
JBáruch
вам тут его не надо
JBáruch
секта единственно верного ООП (на самом деле - ФП на объектах). Та еще ересь.
JBáruch
шопиздец
Vladislav
JBáruch
такое
Vladislav
Berkus
> We want EO to be compilable to Java. We want to stay as close to Java and JVM as possible, mostly in order to re-use the eco-system and libraries already available.
кек
JBáruch
JBáruch
я его интервьюировал. Народ должен знать своих героев. На самом деле он парень хороший, только ебанутый.
Vladislav
взаимоисключающие параграфы, да
Berkus
и пример hello world отличный, оверхед на импорты - 46%
Berkus
"Average one-liner in Java is 22 lines of code" ага
Berkus
в байт код мне смотреть не надо, если язык нормальный
Berkus
> A type may have one to four method declarations.
dafuq?
JBáruch
JBáruch
Ioann_
JBáruch
🦥Alex Fails
Ioann_
Ссылку если не сложно
🦥Alex Fails
Вот Саша скинул
Berkus
Alexander
а ну да, видать о методах тоже добавили)))
Alexander
ну опять же - композиция
Berkus
а по-моему - хуепозиция
JBáruch
позвать вам сюда Егора? :)