Установка Qt заголовков и библиотек

14752
ant2009

Я пытаюсь скомпилировать и установить программное обеспечение. Когда я делаю ./configure. Я получаю следующую ошибку:

проверка на Qt ... configure: error: Qt (> = Qt 3.0.2) (заголовки и библиотеки) не найдены. Пожалуйста, проверьте вашу установку!

Поэтому я устанавливаю следующий пакет, думая, что это решит проблему.

sudo apt-get install libqt4-dev 

Я думал, что libqt4-dev установит заголовки и библиотеки. Тем не менее, я все еще получаю ту же проблему.

Есть идеи?

Ubuntu 9.10
kernel 2.6.31-20-generic


Изменить: я пытаюсь установить kgraphspace-0.3.0-pre1 . Я установил KDE с помощью «sudo apt-get install kde-devel» . Мои KDE 3 include находятся в / usr / include / KDE, а общие библиотеки в / usr / lib / kde4 .

Я пытаюсь запустить эту команду:

./configure --with-qt-includes=/usr/include/qt3/ --with-qt-libraries=/usr/lib/ --prefix=/usr/lib/kde4 

... и я получаю следующую ошибку:

checking for KDE... configure: error: in the prefix, you've chosen, are no KDE libraries installed. This will fail. So, check this please and use another prefix! 

Что мне не хватает?

3

3 ответа на вопрос

1
akira

Ммм ... похоже, ваша программа зависит от Qt 3, а не от Qt 4.

1
Amos

Вслед за akira, вероятно, будет пакет deb, обеспечивающий совместимость с Qt 3, но с установленным Qt 4. В Debian эти пакеты называются такими вещами, как libqt3-headers, libqt3-mt, libqt3mt-dev и т. Д. Попробуйте установить некоторые из них, если вы компилируете из исходного кода, вам, вероятно, потребуются версии dev, а также простые пакеты.

[EDIT] KDE 3 и KDE 4 несовместимы друг с другом, поскольку KDE 3 зависит от Qt 3, а KDE 4 зависит от Qt 4. Я не знаю, является ли это причиной ваших проблем, но вы, похоже, ставите свой KDE 4 установка в качестве префикса, попробуйте KDE 3 вместо.

Все это более новая версия. libqt3-mt-dev уже самая новая версия, libqt3-mt уже самая новая версия, libqt3-headers уже самая новая версия. Большое спасибо за любые дополнительные предложения. ant2009 14 лет назад 0
я использую http://packages.ubuntu.com/ для поиска имен пакетов (например, http://packages.ubuntu.com/search?keywords=qt3&searchon=names&suite=karmic§ion=all) ... @ ant2009, есть Вы проверили * "./ configure --help" *, чтобы увидеть, нужно ли вам использовать конкретную опцию, чтобы показать, где живет Qt? quack quixote 14 лет назад 0
и я использую только "apt-file search filename" .. с именем файла что-то, на что жалуется configure.log. Более того, я думаю, что configure использует 'pkg-config' или 'qmake -query', чтобы узнать о версии qt, более интересной частью будет просто чтение документации программного обеспечения, которое OP хочет скомпилировать, должно быть указано, если оно нуждается в qt3 или qt4. akira 14 лет назад 0
Если он ссылается на Qt> = 3.0.2, то он почти наверняка не будет работать с Qt4, так как две библиотеки несовместимы. Amos 14 лет назад 0
Здравствуйте, мне удалось решить проблему с библиотеками и заголовками qt, установив путь. Однако сейчас у меня проблема с библиотеками kde. Я обновил свой вопрос, так как здесь есть что набрать. ant2009 14 лет назад 0
1
quack quixote

Во-первых, у вашей ./configureкоманды есть две проблемы :

  1. --with-qt-libraries=должен указывать на / usr / lib / qt3 вместо / usr / lib /, если только вы не установили библиотеки Qt3 вручную и не знаете, что они находятся в этом месте.

  2. --prefix=Необходимо указать базовое местоположение, где будет установлен пакет . Это не указывает на что-либо необходимое для компиляции пакета. / usr / lib / kde4, вероятно, плохой выбор; вам нужно добавить его в $ PATH для выполнения программы. Скорее всего, вы хотите --prefix=/usr/localили --prefix=$HOME, чтобы установить либо в / usr / local / bin или / home / [username] / bin, либо придерживаться настройки программы по умолчанию ( / usr / local / kde ).


На достаточно чистой виртуальной машине Ubuntu 9.10 мне нужно было установить эти пакеты и их зависимости.

sudo apt-get install libqt3-headers libqt3-compat-headers libqt3-mt-dev qt3-dev-tools qt3-dev-tools-compat kdelibs4-dev 

Кроме того, ./configureпроверяются некоторые инструменты, входящие в состав aRts - команды mcopidl и artsc-config, которые больше не включены ни в какие пакеты KDE в стандартных репозиториях Ubuntu. aRts была старой звуковой библиотекой KDE, и я считаю, что она была полностью заменена или включена.

Я понятия не имею, требует ли kgraphspace звуковой функционал, поэтому я создал сценарии оболочки $ HOME / bin / mcopidl и $ HOME / bin / artsc-config, которые содержат только это:

#!/bin/sh echo "Hiya" 

Этого достаточно, чтобы выполнить ./configureпроверки, но они не будут работать должным образом, если эти программы действительно вызываются во время компиляции.

Согласно веб-поиску репозитория Ubuntu, настоящие программы в последний раз были доступны в Ubuntu 8.10 (Intrepid). Если вам действительно нужен kgraphspace, подумайте об установке Ubuntu 8.04. (Hardy был LTS-релизом той эпохи, и его хранилища будут примерно дольше, чем Intrepid.)


Вот моя рабочая ./configureкоманда (опции для ясности разбиты на отдельные строки):

./configure --with-qt-includes=/usr/include/qt3  --with-qt-libraries=/usr/lib/qt3 --prefix=/usr/local 

К сожалению, makeумирает со следующей ошибкой, и это насколько я могу попытаться скомпилировать это программное обеспечение:

make[3]: Entering directory `/home/quack/test/kgraphspace-0.3.0-pre1/kgraphspace' source='ktypesstats.cpp' object='ktypesstats.o' libtool=no \ depfile='.deps/ktypesstats.Po' tmpdepfile='.deps/ktypesstats.TPo' \ depmode=gcc3 /bin/bash ../admin/depcomp \ g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/kde -I/usr/include/qt3 -I. -Wall -Wall -c -o ktypesstats.o `test -f 'ktypesstats.cpp' || echo './'`ktypesstats.cpp ktypesstats.cpp: In member function ‘QString KTypesStats::getFileType(const char*)’: ktypesstats.cpp:112: error: invalid conversion from ‘const char*’ to ‘char*’ make[3]: *** [ktypesstats.o] Error 1 

Вы можете попробовать установить более раннюю версию GCC4 ( gcc-4.1 или gcc-4.2 ), поскольку эта ошибка Gentoo указывает на проблемы компиляции с GCC 4.3 (Ubuntu 9.10 предоставляет GCC 4.4 по умолчанию).

Однако один из комментариев указывает на то, что kgraphspace - это мертвый проект, последний раз обновленный в 2002 году. Комментатор рекомендует Filelight в качестве потенциальной замены.

Похожие вопросы