From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Gleb Kulikov Organization: ASD IAO SB RAS To: community@altlinux.ru Subject: Re: [Comm] Re: KDevelop =?utf-8?b?0L3QtSDQvdCw0YXQvtC00LjRgg==?= QT Date: Sun, 6 Feb 2005 22:59:16 +0600 User-Agent: KMail/1.6.2 References: <4203E874.9090506@mtu-net.ru> <200502061309.30671.glebus@asd.iao.ru> <4205DE92.9030804@mtu-net.ru> In-Reply-To: <4205DE92.9030804@mtu-net.ru> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-Id: <200502062259.17107.glebus@asd.iao.ru> X-Spam-Status: No, hits=0.0 required=5.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on xwww.iao.ru X-Virus-Scanned: ClamAV version 0.81, clamav-milter version 0.81b on xwww.iao.ru X-Virus-Status: Clean X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: community@altlinux.ru List-Id: Mailing list for ALT Linux users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Feb 2005 17:09:17 -0000 Archived-At: List-Archive: List-Post: В сообщении от Воскресенье 06 Февраль 2005 15:08 Oleg N. Kayunov написал: > > проекта KDevelop'а с этим жутким autotools и т.п.: scons проще и удобнее, > > и таких заморочек не замечено :) (в свойствах проекта, указать custom > > makefiles и команду "make" как "scons .") > В каких именно Закладке->Листе именно пункте меню-пункта "Параметры > проекта" (так?) это указать? > Пока нашел только "Параметры проекта"->"Параметры make"->"Название > исполняемого файла make", поставил scons. Но получаю: > *scons: Reading SConscript files ... > *File "Makefile.cvs", line 1 Проект -> параметры проекта -> параметры сборки -> Вкадка "Собрать": [!] Make [ ] Ant Запускать средство сборки в каталоге -- тут пишешь корень проекта, именно тут должен лежать Sconstruct. Вкладка "Make": имя исполняемого файла make: "scons ." Всё. Из того вывода, что ты привёл, такое впечатление, что scons пытается читать Makefile.cvs вместо Sconstruct'а, что совершенно не надо делать (уверен, что в параметрах scons у тебя стоит точка?). Понятно, что Sconstruct/SConscript, при таком раскладе, надо делать руками: Kdevelop ничего о них не знает. Для сборки QT программ, SConscript может быть тривиальным, типа #... что-то делаем, если надо... #... определяем списки define-ов и т.п., если надо...но нужно указать #инструменты qt!, типа env = Environment(CCFLAGS = defines, LIBPATH = libs, LIBS = ["pthread"], \ tools=['default', 'qt']) Export('env') здесь defines и libs -- ранее определённые списки глобальных дефайнов и библиотек # собственно исходники и т.п, указываем в SConscript, который кладём в #соответствующий каталог проекта, например # В SConstruct указываем. где его брать: #QT-версия интерфейса SConscript('src/QT/mainwin/SConscript',build_dir='src/QT/mainwin/build/linux',du plicate=0) #А в этом SConscript'е тоже, всё как обычно, только надо указать включаемые #каталоги QT, если ранее это не было сделано: Import('env') env.Append(CPPPATH="include") QTDIR="/usr/lib/qt3" QTINC="/usr/lib/qt3/include" gui_includes=["/usr/include/qwt","moc/","include","#mainwin"] qt_includes=[QTDIR+"/mkspecs/default"\ ,QTDIR\ ,QTINC\ ,"#widgets/bld"] #здесь /usr/include/qwt -- для используемого набора виджетов qwt, # mainwin -- подкаталог в данном каталоге проекта, в котором файлы, отвечающие # за главное окно #widgets -- - подкаталог в данном каталоге проекта, в котором файлы, #отвечающие за собственные виджеты, и т.д -- принцип понятен # практически обязательно определить "стандартные" define'ы gui_Cflags=["-D_REENTRANT", "-DQT_THREAD_SUPPORT","-D__LINUX__"] # Ну, даьше, собственно, перечисляем исходники, нужные библиотеки, используем # определённые дефайны и собираем программу в подкаталоге exe, лежащем в корне дерева проекта (так хочу :) gui_src = ["windowspectrometermain.ui","pgmain00.cpp"] gui_libs_For = ["qwt","qt-mt","Xext","X11","m","pthread"] all_includes = qt_includes+gui_includes env.Append(CPPPATH=all_includes) env.Program(target='#exe/qtmain00.exe',build_dir="build/linux",source=gui_src, CCFLAGS=gui_Cflags\ , LIBPATH=[QTDIR+"/lib","/usr/X11R6/lib","/usr/lib","#/libs"],LIBS=gui_libs_For) всё, у меня работает без проблем, проверено уже не на одном проекте. Кстати, быстрее, чем "родной" мэйк. -- Салют, /GLeb UIN: 15341920 jabber://gleb@asd.iao.ru netmail: 2:5005/78