Olej писал(а):Вот теперь всё готово для ./configure ...
И вот тут 1-е место при сборке, когда нужно чуть погодить...
Почти всегда полезно прежде посмотреть:
Код: Выделить всё
bash-4.2$ cd llvm-3.2.src
bash-4.2$ ./configure --help
`configure' configures LLVM 3.2svn to adapt to many kinds of systems.
Usage: ./configure [OPTION]... [VAR=VALUE]...
To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE. See below for descriptions of some of the useful variables.
...
By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc. You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.
...
Some influential environment variables:
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CPP C preprocessor
...
Почти всегда стоит сильно подумать над --prefix=...
У меня в прежней установке Clang 3.0 в Fedora 17 из их было репозитария (я уже его снёс):
Код: Выделить всё
bash-4.2$ clang --version
clang version 3.0 (tags/RELEASE_30/final)
Target: i386-redhat-linux-gnu
Thread model: posix
bash-4.2$ which clang
/usr/bin/clang
Вот туда в привычное для Fedora место я и буду устанавливать, поэтому --prefix=/usr
Очень интересные переменные окружения CC и CXX - пользуясь ними я могу собирать Clang либо через GCC, либо раскруткой через сам компилятор Clang ... но это я оставляю на позже.
Вот теперь можно и:
- создать рядом каталог сборки, чтобы не портить каталог исходников:
Код: Выделить всё
bash-4.2$ pwd
/home/olej/LLVM
bash-4.2$ mkdir build
bash-4.2$ cd build/
- и вот теперь ./configure :
Код: Выделить всё
bash-4.2$ time ../llvm-3.2.src/configure --prefix=/usr
...
checking for clang... no
checking for llvm-gcc... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
...
configure: creating ./config.status
config.status: creating Makefile.common
config.status: creating Makefile.llvm.config
config.status: executing setup commands
config.status: executing Makefile commands
config.status: executing lib/Makefile commands
config.status: executing lib/sample/Makefile commands
config.status: executing tools/Makefile commands
config.status: executing tools/sample/Makefile commands
real 0m42.952s
user 0m17.680s
sys 0m12.630s
Команды ./cinfigure, make, реже make install - рекомендую
всегда запускать через time, чтобы в следующий раз вы прогнозировали время, которое это затребует.
Это у меня все сборки делаются не на самом быстром процессор, но и не так, чтобы совсем тормознутый:
Код: Выделить всё
bash-4.2$ cat /proc/cpuinfo | grep 'model name'
model name : Genuine Intel(R) CPU T2300 @ 1.66GHz
model name : Genuine Intel(R) CPU T2300 @ 1.66GHz