Na forum 4programmers.net korzystamy z plików cookies. Część z nich jest niezbędna do funkcjonowania
naszego forum, natomiast wykorzystanie pozostałych zależy od Twojej dobrowolnej zgody, którą możesz
wyrazić poniżej. Klikając „Zaakceptuj Wszystkie” zgadzasz się na wykorzystywanie przez nas plików cookies
analitycznych oraz reklamowych, jeżeli nie chcesz udzielić nam swojej zgody kliknij „Tylko niezbędne”.
Możesz także wyrazić swoją zgodę odrębnie dla plików cookies analitycznych lub reklamowych. W tym celu
ustaw odpowiednio pola wyboru i kliknij „Zaakceptuj Zaznaczone”. Więcej informacji o technologii cookie
znajduje się w naszej polityce prywatności.
Mam problem z instalacją biblioteki.Jestem nowicjuszem więc się nie orietnuje.
Robię z pomocą tego tutka - http://wiki.codeblocks.org/index.php/BoostWindowsQuickRef
Zrobiłem kolejno:
C:>PATH C:\boost-jam-3.1.18-1-ntx86;%PATH%
C:>PATH C:\Pliki programów (x86)\CodeBlocks\MinGW\bin;%PATH%
C:>cd /D C:\boost_1_66_0
C:\boost_1_66_0>bjam --toolset=gcc "--prefix=C:\Pliki programów (x86)\CodeBlocks" install
C:/boost_1_66_0/tools/build/src/tools/types\adoc.jam:2: in load
rule Copyright unknown in module adoc.
C:\boost_1_66_0\tools\build\src/kernel\modules.jam:295: in import
C:/boost_1_66_0/tools/build/src/tools/types\register.jam:36: in load
C:\boost_1_66_0\tools\build\src/kernel\modules.jam:295: in import
C:/boost_1_66_0/tools/build/src/tools\stage.jam:18: in load
C:\boost_1_66_0\tools\build\src/kernel\modules.jam:295: in import
C:/boost_1_66_0/tools/build/src/tools\builtin.jam:27: in load
C:\boost_1_66_0\tools\build\src/kernel\modules.jam:295: in import
C:/boost_1_66_0/tools/build/src\build-system.jam:12: in load
C:\boost_1_66_0\tools\build\src/kernel\modules.jam:295: in import
C:\boost_1_66_0\tools\build\src\kernel\bootstrap.jam:139: in boost-build
C:\boost_1_66_0\boost-build.jam:17: in module scope
C:\boost_1_66_0>
Proces miał trwać od 5 do 20 min, a nie kilka sekund i nie powstał żaden katalog w CodeBlocks.
Co robię źle ?
0
Jeśli to wszystkie logi, jakie masz z tego procesu, to jedyne co zwraca uwagę to:
C:/boost_1_66_0/tools/build/src/tools/types\adoc.jam:2: in load rule Copyright unknown in module adoc.
Wygląda to tak, jakby któryś fragment interpretowany był jako reguła/polecenie a nie jako tekst. Nie pamiętam dokładnie już instalacji boost'a - masz możliwość podglądnąć ten plik: adoc.jam?
Bardzo możliwe, że wspomniane Copyright są traktowane jako reguła, której rzecz jasna nie da się wykonać.
Jeśli chcesz mieć jak najłatwiejsze wrzucanie do systemu takich bibliotek jak boost a nie za bardzo wiesz co i jak zainstaluj sobie linuksa. Tam się boost itd. instaluje z repozytoriów i już są(chociaż wiadomo trzeba je czasami dodać do projektu),
0
Poprawiłem już link i działa :)
masz możliwość podglądnąć ten plik: adoc.jam?
#|
Copyright 2017 Rene Rivera
Distributed under the Boost Software License, Version 1.0. (See
accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
|#
import scanner ;
import type ;
type ASCIIDOC : adoc asciidoc ;
class asciidoc-scanner : common-scanner
{
rule pattern ( )
{
return
"include::([^[]+)"
"image::([^[]+)"
"image:([^[]+)"
;
}
}
scanner.register asciidoc-scanner : include ;
type.set-scanner ASCIIDOC : asciidoc-scanner ;
Widziałem to, ale jako nowicjusz jeden nic z tego nie kumam.Kumam ze swojego linka http://wiki.codeblocks.org/index.php/BoostWindowsQuickRef tutaj jest konfiguracja dla CodeBlocks nie dla MSVC.Ale nie wiem co robię źle że nie działa.
Jeśli chcesz mieć jak najłatwiejsze wrzucanie do systemu takich bibliotek jak boost a nie za bardzo wiesz co i jak zainstaluj sobie linuksa. Tam się boost itd. instaluje z repozytoriów i już są(chociaż wiadomo trzeba je czasami dodać do projektu),
Wiem, że linux to taki darmowy Windows, ale mam legalnego Windowsa 10 no i pakiet Office no i jeszcze Antyvirus i gry, a to wszystko kosztowało, więc przesiadka na linux odpada.
Może ktoś instalował boost dla Codeblocks i mi pomoże ?
1
Bjam nie rozumie komentarza blokowego. Skąd go w ogóle masz? Poprawnie skompilowana binarka która odpali Ci boost build powinna nazywać się b2. Bjam swoje życie skończył jakoś przed wersją 1.50.
0
Bjam nie rozumie komentarza blokowego. Skąd go w ogóle masz?
Zassałem z neta z tego co pamiętam to było cosik potrzebne do kompilacji boost.
Poprawnie skompilowana binarka która odpali Ci boost build powinna nazywać się b2.
A w którym katalogu ją znajdę ?
Bjam swoje życie skończył jakoś przed wersją 1.50.
To dziwne bo ja mam wersję 3.1.18.1
0
nie znam codeblocks ale krótko jeśli jesteś aż takim nowicjuszem.
i inne filmy na youtube pod hasłem codeblocks boost windows.
Wiem, że linux to taki darmowy Windows, ale mam legalnego Windowsa 10 no i pakiet Office no i jeszcze Antyvirus i gry, a to wszystko kosztowało, więc przesiadka na linux odpada.
I? Ja też mam windows a linuksa też. Wszystko na jednym komputerze w ramach dualboot. A jak sobie chcesz to możesz odpalić maszynę wirtualną z linuksem(za pomocą virtualbox).
Bjam nie rozumie komentarza blokowego. Skąd go w ogóle masz?
Zassałem z neta z tego co pamiętam to było cosik potrzebne do kompilacji boost.
No to wszystko jasne, używasz niekompatylnej binarki do budowania boost'a. Bjam i b2 to narzędzia kompilowane z tego samego repozytorium boost'a które chcesz zainstalować.
Poprawnie skompilowana binarka która odpali Ci boost build powinna nazywać się b2.
A w którym katalogu ją znajdę ?
W głównym. Tylko, że trzeba ją najpierw skompilować i jest do tego skrypt zwany bootstrap. Wszystko jest w dokumentacji boost'a. Jeżeli skrypt wyprodukuje Ci b2 i bjam to używasz b2.
Czyli podsumowując, rozwiązaniem Twojego problemu powinno być wywołanie bootsratp.bat z konsoli, a potem użycie b2 zamiast bjam w instrukcji instalacji do CodeBlocks.
Bjam swoje życie skończył jakoś przed wersją 1.50.
To dziwne bo ja mam wersję 3.1.18.1
Chodziło o wersję boost'a.
0
Czyli podsumowując, rozwiązaniem Twojego problemu powinno być wywołanie bootsratp.bat z konsoli, a potem użycie b2 zamiast bjam w instrukcji instalacji do CodeBlocks.
Zrobiłem według filmu:
,
ale nie wygenerował mi się plik b2, tylko coś poszło nie tak i otrzymałem:
C:\Users\Marcin Rażyński>cd C:\boost_1_66_0
C:\boost_1_66_0>bootstrap.bat gcc
Building Boost.Build engine
execnt.c: In function 'try_wait_callback':
execnt.c:833:5: warning: implicit declaration of function 'UnregisterWait' [-Wimplicit-function-declaration]
UnregisterWait( slot->wait_handle );
^
execnt.c: In function 'register_wait':
execnt.c:853:9: warning: implicit declaration of function 'RegisterWaitForSingleObject' [-Wimplicit-function-declaration]
RegisterWaitForSingleObject( &cmdtab[ job_id ].wait_handle,
^
C:\Users\Marcin Ra┐y˝ski\AppData\Local\Temp\ccIUmUna.o:execnt.c:(.text+0x1243): undefined reference to `UnregisterWait'
C:\Users\Marcin Ra┐y˝ski\AppData\Local\Temp\ccIUmUna.o:execnt.c:(.text+0x130b): undefined reference to `RegisterWaitForSingleObject'
collect2.exe: error: ld returned 1 exit status
Failed to build Boost.Build engine.
Please consult bootstrap.log for further diagnostics.
You can try to obtain a prebuilt binary from
http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
Also, you can file an issue at http://svn.boost.org
Please attach bootstrap.log in that case.
C:\boost_1_66_0>
Czy muszę pobrać starszą bibliotekę jak na filmie boost_1_63_0 , a czy ktoś wie jak skompilować boost_1_66_0 ?
Z wersją boost_1_63_0 też mam dymy:
C:\Users\Marcin Rażyński>cd C:\boost_1_63_0
C:\boost_1_63_0>bootstrap.bat gcc
Building Boost.Build engine
execcmd.c: In function 'onintr':
execcmd.c:120:5: warning: implicit declaration of function 'out_printf' [-Wimplicit-function-declaration]
out_printf( "...interrupted\n" );
^
execnt.c: In function 'maxline':
execnt.c:524:12: warning: type defaults to 'int' in declaration of 'result' [-Wimplicit-int]
static result;
^
filent.c: In function 'file_archscan':
filent.c:358:10: warning: implicit declaration of function 'filelist_empty' [-Wimplicit-function-declaration]
if ( filelist_empty( archive->members ) )
^
filent.c:360:14: warning: implicit declaration of function 'file_collect_archive_content_' [-Wimplicit-function-declaration]
if ( file_collect_archive_content_( archive ) < 0 )
^
make.c: In function 'make':
make.c:132:13: warning: implicit declaration of function 'out_printf' [-Wimplicit-function-declaration]
out_printf( "...found %d target%s...\n", counts->targets,
^
make.c: In function 'make0':
make.c:735:13: warning: implicit declaration of function 'out_flush' [-Wimplicit-function-declaration]
out_flush();
^
filesys.c: In function 'file_archivescan_impl':
filesys.c:360:10: warning: implicit declaration of function 'filelist_empty' [-Wimplicit-function-declaration]
if ( filelist_empty( archive->members ) )
^
modules/path.c: In function 'path_exists':
modules/path.c:16:12: warning: implicit declaration of function 'file_query' [-Wimplicit-function-declaration]
return file_query( list_front( lol_get( frame->args, 0 ) ) ) ?
^
Failed to build Boost.Build engine.
Please consult bootstrap.log for further diagnostics.
You can try to obtain a prebuilt binary from
http://sf.net/project/showfiles.php?group_id=7586&package_id=72941
Also, you can file an issue at http://svn.boost.org
Please attach bootstrap.log in that case.
C:\boost_1_63_0>
Zainstalowałem sobie MSYS2 i już nie mam żadnych problemów z linkowaniem dll.
0
Zainstalowałem debiana i później g++ i boost.Zainstalowałem też Codeblocks. Ale jak robię przykładowy program się wykłada:
#include <boost/thread/thread.hpp>
#include <iostream>
using namespace std;
void hello_world()
{
cout << "Witaj świecie, jestem wątkiem!" << endl;
}
int main(int argc, char* argv[])
{
// utwórz nowy wątek wywołujący funkcję "hello_world"
boost::thread my_thread(&hello_world);
// poczekaj na zakończenie wątku
my_thread.join();
return 0;
}
0
Co to znaczy, że się wykłada? Nie kompiluje się? Do instalacji Boosta na Ubuntu/Debianie służy: sudo apt install libboost-all-dev apt install libboost-dev instaluje tylko nagłówki.
Dodatkowo jak używasz code blocksa to musisz mu dokładnie powiedzieć jakie liby ma zlinkować.
0
no jakiś problem z kompilacją i uruchmieniem.
Dodatkowo jak używasz code blocksa to musisz mu dokładnie powiedzieć jakie liby ma zlinkować.
A jak to zrobić w Debianie ?
0
no jakiś problem z kompilacją i uruchmieniem.
Nie musiałeś być aż tak dokładny.
A jak to zrobić w Debianie ?
W code blocks prawym przyciskiem myszy na nazwę projektu -> Build options -> Linker settings -> Add i tutaj podajesz biblioteki które chcesz zlinkować. W twoim przypadku, jeśli chcesz użyć threadów (chociaż nie rozumiem po co skoro C++11 ma je w std) dodajesz boost_thread i boost_system
1 użytkowników online, w tym zalogowanych: 0, gości: 1