Надо ли устанавливать wxWidgets после установки Code::Blocks

Это русская секция форума wxWidjets. В этой секции вы можете обсуждать любые вопросы, связанные с wxWidgets на вашем родном языке.
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Всех приветствую! Прошу помочь. Я недавно осваиваю работу с wxWidgets в составе Code::Blocks и совмещаю это с освоением Linux (KUBUNTU 18.04).
Первая установка пакетов прошла более-менее удачно (всё работало). До самостоятельной сборки я еще не дозрел - собирал бинарники из репозитариев, рекомендованных https://www.codeblocks.org и https://www.wxwidgets.org.
Но потом немного поборолся за отображение русских букв на виджетах и что-то нарушил.
Повторные неоднократные попытки установки пакетов приводила к некорректным зависимостям и битым ссылкам.
Перепробовал много вариантов работы с командами apt, apt-get, dpkg ....
Я и дальше продолжу разбираться с нюансами корректной установки пакетов, но прошу ответить на некоторые общие вопросы:
1. Надо-ли после установка Code::Blocks устанавливать дополнительно wxWidgets? Или надо делать наоборот?
2. Надо-ли после установки пакетов дополнительно настраивать Code::Blocks ? И в какой части?

Сейчас у меня стойкая ошибка компиляции:

./wx_pch.h:14:10: fatal error: wx/wxprec.h: Нет такого файла или каталога
#include <wx/wxprec.h>

Раньше я никакие пути дополнительно не прописывал и всё работало (правда я пути не проверял).
Сейчас у меня функционирует Code::Blocks (20.03), вроде как-то установил и пакеты wxWidgets.
Устанавливал все "жёстко" командой dpkg --install. Вроде всё встало, но вот компиляция не проходит. Пока я никакие пути не прописываю. Хочу вначале понять - как нужно корректно устанавливать эти пакеты, чтобы в Code::Blocks всё настроилось автоматически.
Заранее благодарен за ответы.
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Пытаюсь разобраться - как мне настроить Code::Blocks на установленные (наверно криво) библиотеки WxWidgets/
Результат работы wx-config --list

Default config is gtk3-unicode-3.2-unofficial

No config found to match: /usr/bin/wx-config --list
in /usr/lib/x86_64-linux-gnu/wx/config
Please install the desired library build, or specify a different
prefix where it may be found. If the library is not installed
you may call its wx-config directly by specifying its full path.

Also available in /usr:
base-unicode-3.2-unofficial
gtk3-unicode-3.2-unofficia
l

Чувствую, что заблудился в трёх соснах )) но пока чётко не понимаю зависимостей глобальной переменной "wx". wx-config и что конкретно указывать в настройках Code::Blocks. Наверно, вначале нужно как-то настроить wx-config, но пока не умею ...
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7449
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by ONEEYEMAN »

Dobrogo vremeni sutok,
0. KUBUNTU ne rekomenduju.
Ona zavisit ot KDE/Qt. Poddergka Qt v wxWidgets ne nastolko horosha chtoby mogno byloby ee ispolzovta.
Stavte normalnuju sistemu s GNOME/GTK i vse poluchitsja. ;-)

Vkljuchaete russkiuju klaviaturu/russkij jazyk

1. Skompilirovat wx pod *nix ochen prosto:

Code: Select all

git clone https://github.com/wxWidgets/wxwidfgets.git wxWidgets --recurse-submodules
cd wxWidgets
mkdir buildGTK
cd buuildGTK
../configure --enable-debug --with-gtk=3
make -j4
cd samples/minimal
make
./minimal
Esli "minimal" sample zapustilsja - vse v porjadke.

2. Dalee stavite C::B iz standartnogo repositorija

3. Dlja testirovki - poprobujte napist prostenkij "Hello World" s kirillicej i standartnym "printf(), prokompilirovat i zapustit.
Esli poluchilos - prodolgajte.

4. S pomoschju C::B maga sozdajte proekt wxWidgets GUI. Kopiruete kod iz "Minimal.cpp" v fajl sozdannyj C::B kompiliruete i zapuskaete (originalnyj).
Esli vse rabotaet - prekrasno, idem dalshe. Esli net - pishite gde, i kakaja oshibka.

5. Pomenjajte v kode trkst na russkij. Prokompilirujte i zapustite.
Esli budut oshibki - pishite gde i kakie.

Oshibki lusche vsego copy/paste kak v originale.

Spasibo.
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Приветствую! Огромное спасибо за Ваш ответ и подробную инструкцию!
А то я уже немного погрустнел - просмотров много, а никто не отвечал. Наверно с представителем страны-агрессора никто не хочет общаться....
Как видно, я только начинаю осваивать wxWidgets, C::B, Linux. Да и программировал я только на обычном С.
Поэтому, сейчас очень важно - правильно стартовать и выбрать нужные базовые средства.
Очень признателен за Ваш профессиональный совет.
Сейчас буду устанавливать другой дистрибутив с GNOME/GTK.
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7449
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by ONEEYEMAN »

Доброго времени суток,
Не за что.

На самом деле я тоже был в твкой ситуации -пришлось разбираться с Линуксом/Маком и как там все работает на ходу.

Под Виндой было проще ;-)
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Здравствуйте!
Отчёт о проделанной работе )))
0. Установил новую систему
Система.png
Система.png (35 KiB) Viewed 4257 times
1. Скомпилировал wx и получил окно minimal
Минимал.png
Предварительно установил программу git.
И чтобы сценарий
../configure --enable-debug --with-gtk=3
прошёл без ошибок пришлось установить компилятор (GCC) и GTK 3.

2. Но вот с установкой Code::Blocks пока не справился. Не умею пока корректно ставить такой большой пакет с большим количеством .deb - файлов.
Скачал упакованные бинарники, распаковал и устанавливал командой dpkg --install
из распакованного каталога. Наверно установка шла по алфавиту и нарушались зависимости.
Файла сценария в скаченном дистрибутиве я не нашёл. C::B встал криво - wxSmith в меню вообще нет, в установках глобальных переменных пусто. Пробовал прописать вручную, но так как wxWidgets устанавливался в домашний каталог, то эти пути как-то не подошли.
Думаю, прежде чем настраивать C::B надо его корректно и чисто поставить. Буду учиться.

Как Вы подсказали клонированием wxWidgets всё здорово шло в автомате,
а вот так же удобно для Code::Blocks я на их сайте не смог найти. Поэтому скачал бинарники, но с установкой пока не справился.
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7449
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by ONEEYEMAN »

Доброго времени суток,
Попробуйте спросить на C::B форуме..Я не знаю или у них есть русская версия, но...

Спасибо.
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Приветствую! Да, я зарегистрировался на форуме C::B. Хотя у меня английский очень слабо, но гугл-переводчик здорово помогает. Да и надо практиковаться в техническом английском )))
Пока там спрашивать не буду, попробую "добить" бинарный вариант. Заодно - активно изучаю Linux )) особенно надо вжиться в тему каталогов. Хотя это не так уж и сложно, но надо чётко понимать - как система работает по-умолчанию и как пользователь, перемещаясь, может запускать приложения.
Так что, прохожу начальный курс "Привет, Линукс".
Поработаю пока с установкой бинарника, потом может - попробую установить из исходников.
Правда, компиляция и компоновка wxWidgets на этой моей машине шла минут 10-15. Для C::B наверно, будет существенно больше.
Благодарю Вас за внимание! Очень важно чувствовать поддержку.
:)
User avatar
doublemax
Moderator
Moderator
Posts: 19102
Joined: Fri Apr 21, 2006 8:03 pm
Location: $FCE2

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by doublemax »

Urich wrote: Sat Dec 03, 2022 3:29 pm А то я уже немного погрустнел - просмотров много, а никто не отвечал. Наверно с представителем страны-агрессора никто не хочет общаться....
Google Translate wrote: And then I was already a little sad - there were a lot of views, but no one answered. Probably no one wants to communicate with a representative of the aggressor country....
I don't think that's the reason. Most people - including me - don't blame the Russian people, it's just your crazy leader...

But your post was in Russian, it was about CodeBlocks, and required some Linux knowledge, which limits the group of people who can help.
Use the source, Luke!
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Thank you! I understood you.
I am very glad that you paid attention to me. I recently dived into Linux, C::B, wxWidgets. I need to bang my head a little on these things to ask qualified questions))
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7449
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by ONEEYEMAN »

Dobrogo vremeni sutok,
Skoree vsego chto vremja sborki budet bolshe.
Po povodu Linux - vse ochen prosto. Tam toge est peremennaja PATH v kotoruju propisyvajutsja puti po umolchaniju.

Nado tolko ponjat chto katalogi eto te ge samye fajly. I vse vstanwet na svoi mesta. ;-)
Nu ili ne vse - no po krajnej mere monogoe. ;-)

I samoe glavnoe - ponjat kak raspredeljajutsja prava.
I chtop takoe "rwx" i kak eto predstavljaetsja v chislah.

Ponjat chto mogno dage dlja "root" sdelat fajl nedostupnym.

Sprosite na forume - eto prosche chem kopat samomu. Sekonomite vremja. ;-)

Spasibo.
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Приветствую! Большое спасибо за внимание!
Вживаюсь в Linux ))) Чувствую, что технология работы с каталогами, путями файлами - здесь очень важна. И да, значение прав (rwx) пока я недостаточно прочувствовал.
Для осознания надо мне самому подолбиться )))
Как-то неудобно людей на форуме по мелочам спрашивать. Надо какие-то существенные вопросы задавать. Информации много. Читаю книжки, в интернете (много, правда мусора), многое пробую в командной строке....
А что касается установки Code::Blocks - постараюсь понять - почему не удаётся чисто установить пакет. Там 16 отдельных .deb- файлов. И не нашёл указаний в какой последовательности ставить. По идее, должен быть сценарий. Пробовал вчера по одному устанавливать вручную ... вылезают какие-то новые зависимости... Хочу научиться полностью удалять "битые пакеты", чтобы заново процесс установки проходить. Пока не получается, но надо дожать. Думаю, что это не последний пакет, который буду устанавливать и технологию установки бинарников надо освоить.
Конечно, установка из исходников, наверно, лучше. )))
Ещё раз - большое спасибо! Буду здесь отчитываться о выполнении Вашей программы действий.
Смотрю - по 5-10 незарегистрированных гостей на сайте бывают. И этот наш пост уже многие посмотрели. Может кому-нибудь будет полезно.
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7449
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by ONEEYEMAN »

Dobrogo vremeni sutok,
Kogda vy zadaete komandu v Terminale

[code[
ls -la
[/code]
na vyhode u vas poluchaetsja nechto tipa:

Code: Select all

drwxrwxrwx 2 <user> <group> <size> <date> <time>     <filename{ext}>
Pervyj simvol indikator:
d - direktorija/katalog
l - ssylka
- - prostoj fail
c - fizicheskoe ustrojstvo

Sledujuschie tri simvola - prava dostupa dlaj polzovatelja javljajuschegosja vladelcem fajla/polzovatelja sozdqavshego fajl.
R{eadin}W{riting}{e}X{ecuting} (nadejus perevodit ne nugno) ;-)
Sledujuschie 3 simvola - prava dostupa dlja gruppy polzovatelej k kotoryn prinadlegit sozdatel/vladelec fajla
Sledujuschie 3 - dlja vseh ostalnyh

Esli zapisyvat matematicheski - r =,4, w = 2, x = 1.
Polnyj dostup (rwx) - eto 7.

Sledujuschij parametr - kolichestvo ssylok na dannyj fail. (Minimum 1)

Sledujuschij parameter - sozdatel/vladelec fajla

Sledujuschij - gruppa k kotoroj prinadlegit vladelec

Data/vremja - moment modifikacii fajla

Nu i ego nazvanie

S pomoschju komandy "chown" mogno pomenjat vladelca fajla
S pomoschju komandy "chmod" mogno pomenjat prava dostupa

Samoe prostoe - vospolzovatsja komandoj "man chmod" i prochest dokumentaciju. Ili "man chown" (bez kavychek).

Nu i voobsche - "man <command>" pokaget opisanie komandy (ee dokumentaciju).

Na etom poka vse. ;-)
Urich
Earned a small fee
Earned a small fee
Posts: 20
Joined: Fri Nov 25, 2022 5:22 pm
Contact:

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by Urich »

Приветствую! Спасибо за подробное объяснение. Погрузился в эту тему. С правами и (rwx) вроде понятно, но надо вжиться на практике.
Командой "man" пользуюсь ... потихоньку )))
Не осознал пока Вашу первую фразу:
ONEEYEMAN wrote: Mon Dec 05, 2022 11:48 pm Kogda vy zadaete komandu v Terminale

[code[
ls -la
[/code]
na vyhode u vas poluchaetsja nechto tipa:

drwxrwxrwx 2 <user> <group> <size> <date> <time> <filename{ext}>
Это надо понимать так, что в результате обработки терминальной команды создаётся некоторый (может временный) файл ? (В Линуксе всё - файл ...)
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7449
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: Надо ли устанавливать wxWidgets после установки Code::Blocks

Post by ONEEYEMAN »

Dobrogo vremeni sutok,

Ne sovsem esli komanda otdana v Terminale bez nichego drugog:

Code: Select all

ls -la
to proizvoditsja vyvod na Terminal.

Esli komanda imeet vid:

Code: Select all

ls -la >> out.txt
vyvod peredaetsja v fail "out.txt".

Takge kak v C, Linux imeet 3 standartnyh ustrojstva: vvod (0), vyvod (1) i oshibka (2) (V Anglijskom variante - inpout, output and error).

Poetomy esli komanda imeet vid:

Code: Select all

ls -la >> out.txt 2>&1
to vse oshibki toge budut perenapravljatsja v fajl "out.txt". (ustrojstvo 2 perenapravit v ustrojstvo &1, t.e. v parametr predyduschej komandy).

Spasibo.


Spasibo.
Post Reply