Простое связывание Boost с Emscripten (включая MWE)C++

Программы на C++. Форум разработчиков
Ответить
Гость
 Простое связывание Boost с Emscripten (включая MWE)

Сообщение Гость »


Как правильно связать Boost при компиляции с помощью Emscripten?
main.cpp

Код: Выделить всё

#include 

int main() {
boost::filesystem::exists("file.txt");
}
compile and link

Код: Выделить всё

> em++ main.cpp --use-ports=boost_headers -sUSE_BOOST_HEADERS=1 -lboost_headers
wasm-ld: error: /tmp/emscripten_temp_u68f6vxm/main_0.o: undefined symbol: boost::filesystem::detail::status(boost::filesystem::path const&, boost::system::error_code*)
em++: error: '/home/ubuntu/tmp/emscripten/emsdk/upstream/bin/wasm-ld -o a.out.wasm /tmp/emscripten_temp_u68f6vxm/main_0.o -L/home/ubuntu/tmp/emscripten/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten /home/ubuntu/tmp/emscripten/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten/libboost_headers.a -lGL-getprocaddr -lal -lhtml5 -lstubs-debug -lnoexit -lc-debug -ldlmalloc -lcompiler_rt -lc++-noexcept -lc++abi-debug-noexcept -lsockets -mllvm -combiner-global-alias-analysis=false -mllvm -enable-emscripten-sjlj -mllvm -disable-lsr /tmp/tmpv1sq5rj0libemscripten_js_symbols.so --strip-debug --export=emscripten_stack_get_end --export=emscripten_stack_get_free --export=emscripten_stack_get_base --export=emscripten_stack_get_current --export=emscripten_stack_init --export=stackAlloc --export=stackSave --export=stackRestore --export=__get_temp_ret --export=__set_temp_ret --export=__wasm_call_ctors --export-if-defined=__start_em_asm --export-if-defined=__stop_em_asm --export-if-defined=__start_em_lib_deps --export-if-defined=__stop_em_lib_deps --export-if-defined=__start_em_js --export-if-defined=__stop_em_js --export-if-defined=main --export-if-defined=__main_argc_argv --export-if-defined=fflush --export-table -z stack-size=65536 --initial-memory=16777216 --max-memory=16777216 --no-entry --stack-first --table-base=1' failed (returned 1)
with

Код: Выделить всё

-lboost_filesystem
:

Код: Выделить всё

wasm-ld: error: unable to find library -lboost_filesystem
useful links
  • Emscripten basic usage
  • Emscripten ports


Источник: https://stackoverflow.com/questions/781 ... e-included
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»