Всем здравствуйте! Помогите пожалуйста! Необходимо скомпилировать программу из исходников, делаю это в первый раз, все необходимые библиотеки из закрепленного выше руководства установил
Корень папка каталога с исходниками выглядит так:
[CmakeFiles]
[Src]
CmakeCache.txt
Cmake_install.cmake
Makefile
Т.е. исходники были выложены на гитхабе, сначала я их собрал с помощью Cmake, с этим проблем невозникло, теперь когда они пришли к такому виду как выше их необходимо откомпилировать, это сделать у меня не получается
Руководство по компиляции гласит:
Итак чтобы собрать что то из исходниктов
нужно сначала «собрать» конфигуратор
как собрать конфигуратор описано в файле configure.in
а собирается конфигуратор следующими командами
Код: [Выделить]
bootstrap или autogen.sh
Результаты выполнения: bash: ./bootstrap: No such file or directory
bash: ./autogen.sh: No such file or directory
(Естественно как они выполнятся если в папке с исходниками нет таких файло)
Дальше:
если нет скриптов bootstrap или autogen.sh то можно выполнить последовательно следующие команды
Код: [Выделить]
aclocal
autoheader
automake —gnu —add-missing —copy —foreign
autoconf -f -Wall
Отмечу что все эти команды используют файл configure.in
Что это за configure.in и где он лежит?
Значит выполняю aclocal и получаю
aclocal: error: ‘configure.ac’ is required
Итого: у меня нет ни configure.ac ни configure.in, где лежат незнаю, поиск ничего не дал
Что делать?
Написаны обычные вещи, она мне уже снится.
INSTALLING Qt/X11 Version 4.5.0.
1. If you have the commercial edition of Qt, install your license
file as $HOME/.qt-license.
For the open source version you do not need a license file.
2. Unpack the archive if you have not done so already:
cd /tmp
gunzip %DISTNAME%.tar.gz # uncompress the archive
tar xvf %DISTNAME%.tar # unpack it
This creates the directory /tmp/%DISTNAME% containing the files
from the archive. We only support the GNU version of the tar
archiving utility. Note that on some systems it is called gtar.
3. Building
To configure the Qt library for your machine type, run the
./configure script in the package directory.
By default, Qt is configured for installation in the
/usr/local/Trolltech/Qt-4.5.0 directory, but this can be
changed by using the -prefix option. Alternatively, the
-prefix-install option can be used to specify a «local»
installation within the source directory.
cd /tmp/%DISTNAME%
./configure
Type «./configure -help» to get a list of all available options.
To create the library and compile all the demos, examples, tools,
and tutorials, type:
make
If you did not configure Qt using the -prefix-install option,
you need to install the library, demos, examples, tools, and
tutorials in the appropriate place. To do this, type:
su -c «make install»
and enter the root password.
Note that on some systems the make utility is named differently,
e.g. gmake. The configure script tells you which make utility to
use.
If you need to reconfigure and rebuild Qt from the same location,
ensure that all traces of the previous configuration are removed
by entering the build directory and typing
make confclean
before running the configure script again.
4. Environment variables
In order to use Qt, some environment variables needs to be
extended.
PATH — to locate qmake, moc and other Qt tools
This is done like this:
In .profile (if your shell is bash, ksh, zsh or sh), add the
following lines:
PATH=/usr/local/Trolltech/Qt-4.5.0/bin:$PATH
export PATH
In .login (in case your shell is csh or tcsh), add the following line:
setenv PATH /usr/local/Trolltech/Qt-4.5.0/bin:$PATH
If you use a different shell, please modify your environment
variables accordingly.
For compilers that do not support rpath you must also extended the
LD_LIBRARY_PATH environment variable to include
/usr/local/Trolltech/Qt-4.5.0/lib. On Linux with GCC this step
is not needed.
5. That’s all. Qt is now installed.
If you are new to Qt, we suggest that you take a look at the demos
and examples to see Qt in action. Run the Qt Examples and Demos
either by typing ‘qtdemo’ on the command line or through the
desktop’s Start menu.
You might also want to try the following links:
http://doc.trolltech.com/4.5.0/how-to-learn-qt.html
http://doc.trolltech.com/4.5.0/tutorial.html
http://qtsoftware.com/developer
We hope you will enjoy using Qt. Good luck!
sania77
(09.06.17 14:45:24 MSK)
- Показать ответ
- Ссылка
Содержание
- Устанавливаем архив TAR.GZ в Ubuntu
- Шаг 1: Инсталляция дополнительных инструментов
- Шаг 2: Распаковка архива с программой
- Шаг 3: Компилирование DEB-пакета
- Шаг 4: Установка готового пакета
- Вопросы и ответы
TAR.GZ — стандартный тип архива, использующийся в операционной системе Ubuntu. В нем обычно хранятся программы, предназначенные для установки, или различные репозитории. Установить софт этого расширения так просто не получится, его необходимо распаковать и собрать. Сегодня мы бы хотели в деталях обсудить именно эту тему, показав все команды и пошагово расписав каждое необходимое действие.
В самой процедуре распаковки и подготовки софта нет ничего сложного, все выполняется через стандартный «Терминал» с предварительной загрузкой дополнительных компонентов. Главное лишь подобрать рабочий архив, чтобы после разархивации не возникло проблем с инсталляцией. Однако перед началом инструкций мы хотим отметить, что следует внимательно изучить официальный сайт разработчика программы на наличие DEB или RPM-пакетов либо же официальных репозиториев.
Установку таких данных можно произвести гораздо проще. Детальнее о разборе инсталляции RPM-пакетов читайте в другой нашей статье, мы же переходим к первому шагу.
Читайте также: Установка RPM-пакетов в Ubuntu
Шаг 1: Инсталляция дополнительных инструментов
Для осуществления поставленной задачи вам потребуется всего одна утилита, которую необходимо загрузить еще до начала взаимодействия с архивом. Конечно, в Ubuntu уже есть встроенный компилятор, но наличие утилиты для создания и сборки пакетов позволит переделать архив в отдельный объект, поддерживаемый файловым менеджером. Благодаря этому вы сможете передавать DEB-пакет другим пользователям или удалять программу из компьютера полностью, не оставляя лишних файлов.
- Откройте меню и запустите «Терминал».
- Введите команду
sudo apt-get install checkinstall build-essential autoconf automake
для добавления нужных компонентов. - Для подтверждения добавления потребуется ввести пароль от главной учетной записи.
- Выберите вариант Д, чтобы запустить операцию добавления файлов.
- Ожидайте завершения процесса, после чего появится строка ввода.
Процесс инсталляции дополнительной утилиты всегда проходит успешно, поэтому с этим шагом не должно возникнуть никаких проблем. Передвигаемся к дальнейшим действиям.
Шаг 2: Распаковка архива с программой
Теперь вам требуется подключить накопитель с сохраненным там архивом или загрузить объект в одну из папок на компьютере. После этого приступайте к выполнению следующей инструкции:
- Откройте файловый менеджер и перейдите в папку хранения архива.
- Нажмите по нему правой кнопкой мыши и выберите пункт «Свойства».
- Узнайте путь к TAR.GZ — он пригодится для осуществления операций в консоли.
- Запустите «Терминал» и перейдите в эту папку хранения архива с помощью команды
cd /home/user/folder
, где user — имя пользователя, а folder — название директории. - Извлеките файлы из директории, вписав tar
-xvf falkon.tar.gz
, где falkon.tar.gz — название архива. Обязательно нужно ввести не только имя, но и.tar.gz
. - Вы будете ознакомлены со списком всех данных, которые удалось извлечь. Они будут сохранены в отдельной новой папке, находящейся по этому же пути.
Осталось только собрать все полученные файлы в один DEB-пакет для дальнейшей обычной установки программного обеспечения на компьютер.
Шаг 3: Компилирование DEB-пакета
Во втором шаге вы вытащили файлы из архива и поместили их в обычную директорию, однако это еще не обеспечит нормальное функционирование программы. Его следует собрать, придав логический вид и сделав нужный установщик. Для этого используются стандартные команды в «Терминале».
- После процедуры разархивации не закрывайте консоль и переходите сразу в созданную папку через команду
cd falkon
, где falkon — название необходимой директории. - Обычно в сборке имеются уже скрипты по осуществлению компиляции, поэтому советуем сначала проверить команду
./bootstrap
, а в случае ее неработоспособности задействовать./autogen.sh
. - Если же обе команды оказались нерабочими, нужно самому добавить необходимый скрипт. Последовательно введите в консоль команды:
aclocal
autoheader
automake --gnu --add-missing --copy --foreign
autoconf -f -WallВо время добавления новых пакетов может оказаться, что в системе не хватает определенных библиотек. Вы увидите соответствующее уведомление в «Терминале». Установить недостающую библиотеку можно командой
sudo apt install namelib
, где namelib — название требуемого компонента. Сразу же после этого запустите команду./configure
, которая проверит все необходимые файлы архива. В случае появления ошибок недостающие файлы придется найти в любом удобном для вас источнике, скачать и установить точно так же, как это было при использовании предыдущей команды. - По завершении предыдущего шага приступайте к компиляции, вписав команду
make
. Время сборки зависит от объема информации в папке, поэтому не закрывайте консоль и ждите появления уведомления об удачном компилировании. - В последнюю очередь впишите
checkinstall
.
Шаг 4: Установка готового пакета
Как уже было сказано нами ранее, применяемый способ используется для создания из архива DEB-пакета для дальнейшей установки программы любыми удобными способами. Сам пакет вы найдете в той же директории, где хранится TAR.GZ, а с возможными методами его инсталляции ознакомьтесь в отдельной нашей статье по ссылке ниже.
Подробнее: Установка DEB-пакетов в Ubuntu
При попытке установки рассмотренных архивов важно также учитывать, что некоторые из них были собраны специфическими методами. Если приведенная выше процедура не работает, загляните в саму папку распакованного TAR.GZ и отыщите там файл Readme или Install, чтобы ознакомиться с описаниями по установке.
Еще статьи по данной теме:
Помогла ли Вам статья?
From your comments on A.B.’s now-deleted answer, you want to build this software. This answer addresses this fact. Next time, tell us what software you’re building, what steps you’ve tried so far, and whether you’ve read any documentation relating to building the given software, so you get help faster with issues such as these.
First, you need all the build dependencies, and the fastest way to install them all is this command, which installs not only the compiler but the additional boost libraries and Flex that you’ll need. sudo apt-get install build-essential libboost-all-dev cmake flex
Secondly, create a directory and go into it (you said ~/prefix/sw
in your comments).
Thirdly, git clone https://github.com/redpony/cdec.git
.
Fourthly, you probably did not read the README page on the GitHub repository which explains what commands to run to make the software build. It lists these as the build steps, after cd
-ing into the newly created cdec
folder:
cmake .
make -j4
make test
./tests/run-system-tests.pl
Why you would run some other commands other than the ones listed in the repository documentation, I do not know. You need to read up on how to build software, because it varies from software-to-software. It doesn’t look like you need autoreconf
here.
-
Hi, I heard somewhere that when you install a .tar.bz2 file you should use the following code:
mkdir <obj>
cd <obj>
../configure —enable-debug
make
make installBut when I run «../configure —enable-debug» it doesn’t reconise it. But I’ve searched around a bit and found out that I need to type:
aclocal
automake
autoconfBut when I run that, it says «‘configure.ac’ or ‘configure.in’ is required».
How can I get those?
-
Re: ./configure
Try this
sudo apt-get install automake autoconf autotools build-essential
Also you just need to untar the the tar.bz2
Enter its folder via terminal
then follow the commands./configure —enable-debug
make
make install
-
Re: ./configure
Thanks, but you say that you «just need to untar», that’s exactly what I’m doing. My problem is, that when I type «./configure» it doesn’t understand it.
-
Re: ./configure
Thanks, but you say that you «just need to untar», that’s exactly what I’m doing. My problem is, that when I type «./configure» it doesn’t understand it.
-
Re: ./configure
are you untarring it first?
example:
tar -xvf myfile.tarseems like you need to cd into the untarred directory and ls to make sure the «configure» file is there…
I am confused on what you are having problems with
-
Re: ./configure
I wasn’t untarring it, I’ll go and try now. And newbies have some weird problems you know…
-
Re: ./configure
yeah I know aobut that…I am still a newb myself…I just had to learn the tar thing the hard way back on my mandrake 9 box
Good Luck
-
Re: ./configure
Oh, does it matter that it’s a .tar.bz2?
And I’ll try to explain my problem:
I have downloaded this program (if you want to know, opencity)
And in the install instructions it says this:mkdir obj
cd obj
../configure —enable-debug
make
make installSo my noobish knowledge and I go and run that code, everything goes just fine until we cross the line «../configure —enable-debug» when I type it the terminal produces the following output: «bash: ../configure: unknown file or directory»
But when I scroll down in the installing instructions it says:
In case you don’t have a configure script, the following
commands will creat one:aclocal
automake
autoconfSo I run those codes, but with each of the three it says: «aclocal/automake/autoconf: ‘configure.ac’ or ‘configure.in’ is required»
That’s my problem…
-
Re: ./configure
Ok, here’s what you do. You unpack the archive to somewhere easy to find, like your home directory or something. You can do this with Archive Manager for instance, probably just need to doubleclick the downloaded file for it to start.
Then, start a terminal and navigate *into* the created directory, probably named opencity something. You need to be inside this directory from the terminal. You could install nautilus-open-terminal to get a context menu entry for opening a terminal in a directory from nautilus (why oh why is this not default when it is so often needed).
Once inside that directory, when the prompt says opencity something in the path, you should be able to see the file configure there by typing «ls». Then, follow those instructions as they were typed. It should work just fine.
Another option is to try and see if you can find a prebuilt package for it. Even if it isn’t in the repositories, there’s sometimes .deb files available on the net. Type «sudo dpkg -i package-name.deb» to install such a package.
HTH
-
Re: ./configure
Thanks alot, that’ll do it.
не могу скомпилить (куда-то делся configure)
Модератор: Bizdelnick
-
toboe
- Сообщения: 79
- ОС: Fedora 10
не могу скомпилить
Хочу установить из сорца. Мои действия:
1. tar xvzf cedega_6.1.i386.p2p.tgz
2.
[root@home cedega_6.1]# configure
-bash: configure: команда не найдена
3. Почитал вот то:
Если отсутствует configure, собираем его командами bootstrap или autogen.sh. Если нет и таких скриптов, то пробуем
aclocal
autoheader
automake –gnu –add-missing –copy –foreign
autoconf -f -Wall
4. Проверяем:
[root@home tmp]# aclocal
aclocal: `configure.ac’ or `configure.in’ is required
[root@home tmp]# automake —gnu —add-missing —copy —foreign
automake: `configure.ac’ or `configure.in’ is required
[root@home tmp]# autoheader
autoheader: `configure.ac’ or `configure.in’ is required
Кто-нибудь объясните — что это и как такое возможно? О_о Стоит Федора 10
MSI Mega BOOK M520b, Intel Pentium M 740 1.73 GHz, VGA compatible controller: Intel Corporation Mobile 915GM, 1.0 Gb ОЗУ, 80Gb Hdd
-
nesk
- Сообщения: 2268
- Статус: Линукссаксовец
- ОС: MS Windows XP Home SP3
- Контактная информация:
Re: не могу скомпилить
Сообщение
nesk » 09.03.2009 21:45
toboe писал(а): ↑
09.03.2009 21:41
2.
[root@home cedega_6.1]# configure
-bash: configure: команда не найдена
если бы там даже и был configure, то запускать его следовало так:
[root@home cedega_6.1]# ./configure
И можно даже не от рута.
Но я не думаю, что cedega распространяется в виде исходников.
советую обратить внимание на файлы README и INSTALL в каталоге cedega_6.1 или инструкцию на сейчас cedega
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
0xDEFEC8ED
-
toboe
- Сообщения: 79
- ОС: Fedora 10
Re: не могу скомпилить
Сообщение
toboe » 09.03.2009 21:58
Может я ошибаюсь конечно. Первый раз с этим сталкваюсь…
Я скачал файл cedega-engine_6.1.cpkg в котором был cedega_6.1.i386.p2p.tgz. я так и подумал что это сорц
[root@home cedega_6.1]# ./configure
Такая же реакция
советую обратить внимание на файлы README и INSTALL в каталоге cedega_6.1
Отсутсвуют
Все, разобрался. Темку можно удалить чтобы не позориться
MSI Mega BOOK M520b, Intel Pentium M 740 1.73 GHz, VGA compatible controller: Intel Corporation Mobile 915GM, 1.0 Gb ОЗУ, 80Gb Hdd
-
blackst0ne
- Сообщения: 528
- Статус: ツ
- ОС: Ubuntu 9.04
Re: не могу скомпилить
Сообщение
blackst0ne » 10.03.2009 13:34
Вы бы написали как проблему решили свою для будущих поколений.
И добавьте в заголовке своей темы в самом начале конструкцию [Решено] , чтобы люди не тратили свое время на прочтение темы, которая уже неактуальна.
Спасибо за понимание.
Администрация! Пожалуйста, добавьте птичку «решено», а также соответствующую кнопку на ajax’е в теме (подробнее здесь).
Не для всех программ уже есть готовые пакеты для вашего дистрибутива, также новые версии программ могут распространяться только в форме tar.gz архива или просто исходников.
У многих новых пользователей Ubuntu возникает вопрос, как же устанавливать программы или игры в формате tar.gz. Ведь менеджером пакетов они не открываются, а двойным кликом открывается архив. Дело в том, это на самом деле еще не программа, это действительно архив. Архив исходных кодов программы, и если говорить простыми словами, то это набор текстовых файлов с инструкциями на определенном языке программирования.
Чтобы все это превратилось в готовую к установке и выполнению программу нужно выполнить сборку (компиляцию). Но не бойтесь всех этих новых терминов, на самом деле все намного проще чем кажется, вам не нужно будет ничего ни писать, ни исправлять, достаточно только ввести несколько команд в терминале. В этой инструкции будет рассмотрена установка tar.gz в Ubuntu.
Подготовка системы
Готовить почти нечего, компилятор GCC уже предустановлен в системе, и уже можно переходить к сборке. Но мы хотим не просто установить программу, а так чтобы ею потом можно было управлять с помощью пакетного менеджера, например, при удалении полностью стереть все ее файлы, не оставляя мусора в системе. Поэтому придется установить дополнительные утилиты для создания и сборки пакетов Ubuntu.
Наберите следующую команду для установки этих инструментов:
sudo apt install checkinstall build-essential autoconf automake
Я предполагаю, что архив с исходниками у вас уже есть, теперь можно переходить к сборке программы и установке tar.gz Ubuntu. Неважно в какой папке будет находиться архив, главное, чтобы вы знали где. Первой командой, которую мы выполним будет переход в папку с архивом:
cd ~/путь/к/папке/с/архивом
Дальше извлечем исходники из архива с программой:
tar -xvf имя_архива.tar.gz
И переходим в папку с только что полученными исходными файлами:
cd ./имя_архива
Обычно программы в Linux состоят из большого количества файлов, и при их сборке нужны различные параметры и опции, поэтому вместо того, чтобы запускать компилятор для каждого из файлов вручную, в Linux используется утилита make. Она на основе файла Makefile подбирает правильные команды компиляции для каждого файла и собирает всю программу.
Программы часто используют внешние библиотеки, а в разных дистрибутивах путь к файлам библиотек разный, поэтому перед тем, как запускать make нужно выполнить скрипт configure для проверки зависимостей. Этот скрипт можно создать на основе файла configure.in. Но это необязательно, во многих программах скрипт конфигурации не предусмотрен и программа не требует проверки зависимостей перед сборкой, тогда файла configure.in просто нет в папке с исходниками. Если так, то просто пропустите следующие инструкции и переходите к сборке.
Скрипт configure можно создать несколькими способами, сначала попытаемся выполнить следующие скрипты:
./bootstrap
./autogen.sh
Если же этих скриптов не оказалось в исходниках, просто последовательно выполните следующие команды:
aclocal
autoheader
automake --gnu --add-missing --copy --foreign
autoconf -f -Wall
Если все прошло успешно установка из исходников Ubuntu может быть продолжена. Теперь, наверное, самое сложное, запускаем configure:
./configure
Если скрипт обнаружит что какой-то библиотеки нет (File имя_файла_библиотеки.so not found), скомпилировать пакет не получится, берем название библиотеки и ищем в Google как называется ее пакет в Ubuntu, а затем устанавливаем его через apt-get. Обычно это libимя_библиотеки или libимя_библиотеки-dev.
Например, нам не хватало libfuse.so. С помощью поисковой системы мы узнали, что эта библиотека есть в пакете libfuse. Теперь просто ее установим:
sudo apt install libfuse
Затем опять выполняете configure, чтобы посмотреть нет ли других неразрешенных зависимостей. И повторяете все до тех пор, пока не увидите слово Sucessful или Complete в конце вывода скрипта.
И только теперь установка tar.gz в Ubuntu может быть продолжена и программа собрана. Команда make скомпилирует программу из исходников, а скрипт checkinstall соберет deb пакет:
make
Самое сложное уже позади, на этом этапе ошибки почти никогда не возникают.
checkinstall
И только теперь мы получили программу, которую можно устанавливать с помощью центра приложений или в терминале. Установка с помощью dpkg будет выглядеть вот так:
dpkg -i имя_программы.deb
Точно так же ее можно установить любым доступным способом. Теперь это самый обычный пакет. Вы можете не только установить программу из tar.gz, но и скинуть готовый пакет своим друзьям.
Выводы
Вот и все. Теперь вы знаете как установить программу из tar.gz. Ну или точнее, что tar.gz это только текстовые файлы, и чтобы получить из них программу придется немного потрудиться. Вы можете собирать себе самые новые версии программ, которые хотите или даже выгружать собранные пакеты в интернет. Установка tar.gz Ubuntu, это не так уж сложно, как кажется. Если у вас остались вопросы, спрашивайте в комментариях!
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .