From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <42067ADB.6030304@mtu-net.ru> Date: Sun, 06 Feb 2005 23:15:23 +0300 From: "Oleg N. Kayunov" User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.7.2) Gecko/20040808 X-Accept-Language: ru-ru, ru MIME-Version: 1.0 To: community@altlinux.ru References: <4203E874.9090506@mtu-net.ru> <200502061309.30671.glebus@asd.iao.ru> <4205DE92.9030804@mtu-net.ru> <200502062259.17107.glebus@asd.iao.ru> In-Reply-To: <200502062259.17107.glebus@asd.iao.ru> X-Enigmail-Version: 0.85.0.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Subject: [Comm] Re: KDevelop =?koi8-r?b?zsUgzsHIz8TJ1CBRVA==?= 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 20:15:50 -0000 Archived-At: List-Archive: List-Post: Gleb Kulikov пишет: >В сообщении от Воскресенье 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 >> >> > >Проект -> параметры проекта -> параметры сборки -> > > Вот тут-то и облом - есть "Параметры configure", "Параметры запуска" и "Параметры make", ни в одном нет вкладки собрать (таковая есть только в Doxygen, но это как-то....) и нет кнопки [ ] Ant. А какая версия Kdevelop? У меня - 3.04 для KDE 3.2.3. >Вкадка "Собрать": > [!] Make > [ ] Ant >Запускать средство сборки в каталоге -- тут пишешь корень проекта, именно тут >должен лежать Sconstruct. > >Вкладка "Make": > имя исполняемого файла make: "scons ." > > это, в "Параметры make" сделано. >Всё. Из того вывода, что ты привёл, такое впечатление, что scons пытается >читать Makefile.cvs вместо Sconstruct'а, что совершенно не надо делать >(уверен, что в параметрах scons у тебя стоит точка?). > > Не стоит :-( Поставил. Те же яйца, вид сбоку. И ведь по-прежнему пытается читать именно Makefile.cvs. >Понятно, что 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) > >всё, у меня работает без проблем, проверено уже не на одном проекте. Кстати, >быстрее, чем "родной" мэйк. > > Ну это, конечно, приятно, но вряд-ли при нынешних пнях критично. -- == В действительности все обстоит совершенно иначе чем на самом деле. == BR, Oleg N. Kayunov.