Portál AbcLinuxu, 12. května 2025 05:48
Dobrý den,
potřeboval bych používat aktuální (ideálně 1.37, minimálně 1.35 knihovnu boost/thread). Problém je, že moje distribuce má muzeální verzi boostu (1.31) a od těch dob se v libboost poměrně dost změnilo. Zatím bych rád nechal na stroji současnou verzi Debianu a tak jsem se pokusil libboost zkompilovat podle návodu, což však skončilo cca 1,5-3MB chybových hlášek na stdout (fuj to jsou prasata, to patří na stderr). Chápu, že jsou nějaké chybné vazby v includovaných knihovnách, ale nevím co s tím ...
Přikládám začátek chybových hlášek s probou o pomoc:
./tools/jam/src/bin.linuxx86/bjam --user-config=user-config.jam --prefix=/usr/local --exec-prefix=/usr/local --libdir=/usr/l ocal/lib --includedir=/usr/local/include install warning: Graph library does not contain optional GraphML reader. note: to enable GraphML support, set EXPAT_INCLUDE and EXPAT_LIBPATH to the note: directories containing the Expat headers and libraries, respectively. warning: skipping optional Message Passing Interface (MPI) library. note: to enable MPI support, add "using mpi ;" to user-config.jam. note: to suppress this message, pass "--without-mpi" to bjam. note: otherwise, you can safely ignore this message. Building Boost.Regex with the optional Unicode/ICU support disabled. Note: Please refer to the Boost.Regex documentation for more information Note: this is a strictly optional feature. ...patience... ...found 1744 targets... ...updating 711 targets... gcc.compile.c++ bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/tgamma.o libs/math/build/../src/tr1/tgamma.cpp:7:30: error: boost/math/tr1.hpp: No such file or directory libs/math/build/../src/tr1/tgamma.cpp:8:50: error: boost/math/special_functions/gamma.hpp: No such file or directory In file included from libs/math/build/../src/tr1/tgamma.cpp:9: libs/math/build/../src/tr1/c_policy.hpp:6:42: error: boost/math/policies/policy.hpp: No such file or directory libs/math/build/../src/tr1/c_policy.hpp:7:53: error: boost/math/special_functions/math_fwd.hpp: No such file or directory libs/math/build/../src/tr1/c_policy.hpp:11: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:12: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:13: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:14: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:15: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:16: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:17: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:19: error: expected initializer before ‘<’ token libs/math/build/../src/tr1/c_policy.hpp:27: error: expected constructor, destructor, or type conversion before ‘(’ token libs/math/build/../src/tr1/tgamma.cpp:13: error: expected initializer before ‘tgamma’ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_MATH_TR 1_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/tgamma.o" "libs/math/build/../sr c/tr1/tgamma.cpp" ...failed gcc.compile.c++ bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/tgamma.o... gcc.compile.c++ bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/trunc.o libs/math/build/../src/tr1/trunc.cpp:7:30: error: boost/math/tr1.hpp: No such file or directory libs/math/build/../src/tr1/trunc.cpp:8:50: error: boost/math/special_functions/trunc.hpp: No such file or directory In file included from libs/math/build/../src/tr1/trunc.cpp:9: libs/math/build/../src/tr1/c_policy.hpp:6:42: error: boost/math/policies/policy.hpp: No such file or directory libs/math/build/../src/tr1/c_policy.hpp:7:53: error: boost/math/special_functions/math_fwd.hpp: No such file or directory libs/math/build/../src/tr1/c_policy.hpp:11: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:12: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:13: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:14: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:15: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:16: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:17: error: ‘boost’ has not been declared libs/math/build/../src/tr1/c_policy.hpp:19: error: expected initializer before ‘<’ token libs/math/build/../src/tr1/c_policy.hpp:27: error: expected constructor, destructor, or type conversion before ‘(’ token libs/math/build/../src/tr1/trunc.cpp:13: error: expected initializer before ‘trunc’ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_MATH_TR 1_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/trunc.o" "libs/math/build/../src /tr1/trunc.cpp" ...failed gcc.compile.c++ bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/trunc.o... gcc.compile.c++ bin.v2/libs/math/build/gcc-4.1.2/release/threading-multi/acosh.o libs/math/build/../src/tr1/acosh.cpp:7:30: error: boost/math/tr1.hpp: No such file or directory libs/math/build/../src/tr1/acosh.cpp:8:50: error: boost/math/special_functions/acosh.hpp: No such file or directory In file included from libs/math/build/../src/tr1/acosh.cpp:9: libs/math/build/../src/tr1/c_policy.hpp:6:42: error: boost/math/policies/policy.hpp: No such file or directory libs/math/build/../src/tr1/c_policy.hpp:7:53: error: boost/math/special_functions/math_fwd.hpp: No such file or directory libs/math/build/../src/tr1/c_policy.hpp:11: error: ‘boost’ has not been declared
Muzete napsat jakym prikaz jste spustil kompilaci knihovny?
Omlouvam se prehledl jsem ten prikaz osobne kdyz jsem kompiloval naposledy 1.35 verzi s install jsem taky nepochodil zkuste misto install na konci prikazu napsat stage
Díky za odpověď, o tom stage jsem nevěděl, trochu jsem si s tím hrál, ale furt nic
./tools/jam/src/bin.linuxx86/bjam --user-config=user-config.jam stage
pouštím v aktuálním adresáři, v konfigu je jen verze pythonu a informace, že kompilátor je gcc ... tak nevím (
Vlastní balíky jsem nikdy nevyráběl a taky nemám tušení co všechno by se muselo backportnout spolu s boostem .. Přinejhorším to zkusím, ale moc se mi nechce znovu vymýšlet kolo ... I když z hlediska uživatelů by to asi bylo nakonec v podstatě nejelegantnější ...
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.