Титла: C Runtime library инсталация Публикувано от: clovenhoof в Jul 28, 2010, 13:17 Снощи стоях до късно и така и не успях да компилирам един анг-бг речник (апликейшън).
Дава грешка че няма инсталирани X11 библиотеки и С функцията getenv() която е в stdlib.h не я разпознава. Последното е явно липса и на CRT библиотеките и хедърите. Въпроса ми е как да инсталирам тези библиотеки? Сложих IDE-то на Qt с идеята че ще си инсталира CRT библиотеките, ама пак ми дава че не разпознава getenv(). Титла: Re: C Runtime library инсталация Публикувано от: bop_bop_mara в Jul 28, 2010, 13:30 Речника в някакво readme или подобно може да има описани нужните за него библиотеки за по-лесно. Но дори и да го няма този списък, компилираш, то ти плюе грешка за липсваща библиотека, инсталираш нейния dev пакет (това са точно хедърите й) и пробваш пак да компилираш и т.н.
Титла: Re: C Runtime library инсталация Публикувано от: task_struct в Jul 28, 2010, 13:40 Здравей,
Имаш ли инсталиран build-essential пакета? Той би трябвало да ти предостави хедърите за стандартната С библиотека. Ако приложението е писано на Qt, инсталирай си неговите dev пакети. Като зависимост те ще инсталират и X11 пакетите :) Може ли все пак да дадеш какво ти изписва? Така ще ни е по-лесно да предложим решение :) Титла: Re: C Runtime library инсталация Публикувано от: clovenhoof в Jul 28, 2010, 13:47 Междудругото речника не ме притеснява.
Притеснява ме че нямам необходимите библиотеки за компилиране. В readme-то няма описани библиотеките. За X11 server просто ми казва че нямам необходимите библиотеки и спира. За getenv() казва че не я разпознава - пак не дава коя библиотека точно да инсталирам. Сложих Ubuntu уж за по-голямо удобство и наистина разпозна и конфигурира хардуера сам. За обикновен потребител има всичко необходимо, но за компилиране и девелопмент ми е объркано. Преди бях опитвал със SUSE. Там беше по трудно всичко, но в крайна сметка ставаше. Там помня че наистина ми казваше какво точно липсва. Макар че нама логика защото компайл системата от тулчета би трябвало да е почти същата, макар и доста различна дистрибуция. Също така ми е трудно да се ориентирам от името на библиотеката за dev пакета. Титла: Re: C Runtime library инсталация Публикувано от: clovenhoof в Jul 28, 2010, 13:51 Здравей
В момента съм на работа и съм на Windows. build-essential ще го проверя вкъщи довечера и пак ще пиша. мерси. Титла: Re: C Runtime library инсталация Публикувано от: n00b в Jul 28, 2010, 13:53 Съмнява ме че си пропуснал пакети за разработчици. Нещо като x11-dev.
Титла: Re: C Runtime library инсталация Публикувано от: clovenhoof в Jul 28, 2010, 20:07 Нещата донякъде се оправиха, но още не мога да билдна този речник: kbgoffice-1.8.
X11 библиотеките вече са налични, но още ми дава следната грешка при компайл: Цитат Good news! Look that you have all needed packages installed Мисля, че има грешка в сорса, защото щеше да каже, че не може да намери stdlib.h в който е декларирана getenv(). Някой от вас компилирал ли е този речник (по-точно тази версия)? Титла: Re: C Runtime library инсталация Публикувано от: borovaka в Jul 28, 2010, 22:54 kbgoffice е доста стар проект и беше за qt3, не знам дали има нова версия (много ме съмнява да има). Друг проблем е, че сменяха синтаксиса на някой функции на gcc от версия 3 до версия 4 и се омазаха още повече нещата.
Ако искаш речник има нов spellbook ползва същия речник на kbgoffice но е писан на java в сайта можеш да откриеш линк за свалянето. Титла: Re: C Runtime library инсталация Публикувано от: gat3way в Jul 29, 2010, 12:12 Чудно какво ли ще стане ако замениш в main.cpp където има getenv(..) с std::getenv(...)
Титла: Re: C Runtime library инсталация Публикувано от: clovenhoof в Jul 29, 2010, 13:33 Грешка!
getenv() е от CRT и я няма в STL. Титла: Re: C Runtime library инсталация Публикувано от: v_badev в Jul 29, 2010, 18:04 clovenhoof, std:: не е запазена територия на STL. Например string не е част от STL, но никой нормален компилатор няма да те пусне да го използваш без std:: отпред или без изрично включване на namespace-a. И std::getenv е напълно коректно ако инклудваш стандартната C библиотека с #include <cstdlib>.
А по темата - вместо да се мъчиш да компилираш kbgoffice си инсталирай gbgoffice с apt-get или от synaptic. Титла: Re: C Runtime library инсталация Публикувано от: clovenhoof в Jul 29, 2010, 22:56 Цитат И std::getenv е напълно коректно ако инклудваш стандартната C библиотека с #include <cstdlib>. 1. Тук си прав, макар че <cstdlib> идва с STL и не е част от CRT. Но защо да слагам std:: отпред, ако човека писал речника е вкючил stdlib.h? #include <cstdlib> -> std::getenv(...) (С++) #include <stdlib.h> -> getenv(...) (С) Едва ли той не знае горното. 2. string е typedef на basic_string<...> от STL и е в std пространството. 3. Мерси за речника :) Титла: Re: C Runtime library инсталация Публикувано от: gat3way в Jul 29, 2010, 23:18 Аз не видях със сигурност да се твърди че е инклуднат stdlib.h, пише единствено че е функцията е декларирана във въпросният хедър.
|