<?xml version="1.0" encoding="utf-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Форум программистов и сисадминов Киберфорум - Блоги - Profi_GMan</title>
		<link>https://www.cyberforum.ru/blogs/873846/</link>
		<description>КиберФорум - форум программистов, системных администраторов, администраторов баз данных, компьютерный форум, форум по электронике и бытовой технике, обсуждение софта. Бесплатная помощь в решении задач по программированию и наукам, решение проблем с компьютером, операционными системам</description>
		<language>ru</language>
		<lastBuildDate>Sat, 19 Sep 2026 05:52:33 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>60</ttl>
		<image>
			<url>https://www.cyberforum.ru//cyberstatic.net/images/misc/rss.jpg</url>
			<title>Форум программистов и сисадминов Киберфорум - Блоги - Profi_GMan</title>
			<link>https://www.cyberforum.ru/blogs/873846/</link>
		</image>
		<item>
			<title>Ошибка undefined reference to со статическими методами g++</title>
			<link>https://www.cyberforum.ru/blogs/873846/5127.html</link>
			<pubDate>Mon, 05 Feb 2018 17:39:55 GMT</pubDate>
			<description>Недавно вдруг у меня начали выдаваться куча ошибок undefined reference to со статическими методами....</description>
			<content:encoded><![CDATA[<div>Недавно вдруг у меня начали выдаваться куча ошибок undefined reference to со статическими методами. Решил поделиться решением.<br />
У меня была включена опция -rdynamic, и когда я её отключил всё заработало. Так что если у вас такая же ошибка проверьте опции g++ на наличие -rdynamic и попробуйте скомпилировать без неё</div>

]]></content:encoded>
			<dc:creator>Profi_GMan</dc:creator>
			<guid isPermaLink="true">https://www.cyberforum.ru/blogs/873846/5127.html</guid>
		</item>
		<item>
			<title>C++ Qt Не работает qDebug() на linux</title>
			<link>https://www.cyberforum.ru/blogs/873846/5087.html</link>
			<pubDate>Fri, 05 Jan 2018 08:09:00 GMT</pubDate>
			<description>Я тут нашёл баг, решил поделиться, ибо мне на его исправление потребовалось полдня 
 
Суть бага...</description>
			<content:encoded><![CDATA[<div>Я тут нашёл баг, решил поделиться, ибо мне на его исправление потребовалось полдня<br />
<br />
Суть бага такова:<br />
Не работает qDebug(), причём qCritical() и qWarning() работают.<br />
И если даже насильно поставть<br />
<div class="codeblock"><table class="cpp-qt"><thead><tr><td colspan="2" id="407281549"  class="head">C++ (Qt)</td></tr></thead><tbody><tr class="li1"><td><div id="407281549" style="height: 46px" class="codeframe"><table><tr class="li1"><td class="ln" style="padding: 0px 10px 0px 5px;"><pre class="de1">1
</pre></td><td class="de1"><pre class="de1"><span class="co2">#undef QT_NO_DEBUG</span></pre></td></tr></table></div></td></tr></tbody></table></div>Всё равно не работает. <br />
Порывшись несколько часочков в гугле(яндекс тут уже бессилен), я наткнулся на решение:<br />
Оказывается, для qDebug() нужен ~/.config/QtProject/qtlogging.ini<br />
Причём пустой. Поэтому я у себя в проектах написал вот такой код:<br />
<div class="codeblock"><table class="cpp-qt"><thead><tr><td colspan="2" id="41068902"  class="head">C++ (Qt)</td></tr></thead><tbody><tr class="li1"><td><div id="41068902" style="height: 94px" class="codeframe"><table><tr class="li1"><td class="ln" style="padding: 0px 10px 0px 5px;"><pre class="de1">1
2
3
4
</pre></td><td class="de1"><pre class="de1"><span class="co2">#if defined(Q_OS_LINUX) //если линукс</span>
&nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="kw5">QFile</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">exists</span><span class="br0">&#40;</span><span class="kw5">QString</span><span class="sy0">::</span><span class="me2">fromLocal8Bit</span><span class="br0">&#40;</span>qgetenv<span class="br0">&#40;</span><span class="st0">&quot;HOME&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">+</span> <span class="st0">&quot;/.config/QtProject/qtlogging.ini&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="co1">//Если qtlogging.ini не существует</span>
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">system</span><span class="br0">&#40;</span><span class="st0">&quot;touch ~/.config/QtProject/qtlogging.ini&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span> <span class="co1">//то создаём его </span>
<span class="co2">#endif</span></pre></td></tr></table></div></td></tr></tbody></table></div>Я использовал system(&quot;touch ...&quot;), чтобы меньше кода было. Никаких проверок не нужно, зачем тогда рассписывать<br />
зы На windows такого бага нет, а если он и есть - таким способом не исправится</div>

]]></content:encoded>
			<dc:creator>Profi_GMan</dc:creator>
			<guid isPermaLink="true">https://www.cyberforum.ru/blogs/873846/5087.html</guid>
		</item>
		<item>
			<title>О моём блоге</title>
			<link>https://www.cyberforum.ru/blogs/873846/5074.html</link>
			<pubDate>Tue, 26 Dec 2017 20:42:03 GMT</pubDate>
			<description>Я всегда хотел кого-то учить. Человека учить мне так и не довелось, и тогда я решил писать статьи....</description>
			<content:encoded><![CDATA[<div>Я всегда хотел кого-то учить. Человека учить мне так и не довелось, и тогда я решил писать статьи. Я попробовал написать на хабре. Там статью посчитали не нужной. Тогда я написал здесь эту же статью, как тему. После этого я понял, что учитель из меня никакой :D. Мне там сказали, что существует блог. Теперь я буду сюда выкладывать решения, которые сложно найти, и которые я писал сам. Чтобы потом другие уже не мучились.<br />
<br />
Просто хотел рассказать, зачем это нужно</div>

]]></content:encoded>
			<dc:creator>Profi_GMan</dc:creator>
			<guid isPermaLink="true">https://www.cyberforum.ru/blogs/873846/5074.html</guid>
		</item>
		<item>
			<title>C++ Qt Класс для выполнения консольных команд cmd/linux shell(замена system())</title>
			<link>https://www.cyberforum.ru/blogs/873846/5073.html</link>
			<pubDate>Tue, 26 Dec 2017 20:16:22 GMT</pubDate>
			<description>*Предисловие* 
Так как чтообы выполнить команду с помощью QProces нужно несколько строчек, я...</description>
			<content:encoded><![CDATA[<div><b><font size="5">Предисловие</font></b><br />
Так как чтообы выполнить команду с помощью QProces нужно несколько строчек, я написал класс-функцию для выполнения консольных команд cmd/linux shell с помощью QProcess. <br />
<br />
<b><font size="5">Возможности</font></b><ol style="list-style-type: decimal"><li>Работает и на линукс, и на винде, ибо работает через QProcess</li>
<li>Выводит результаты и ход работы через qDebug()</li>
<li>Возвращяет QPair&lt;int, QString&gt; с возвращаемым значением и выводом команды</li>
<li>Имеет единственную статическую функцию, т.е., для выполнения команд не нужно создавать объект</li>
<li>Наверное, так себе возможность, но всё же: Поскольку класс имеет всего одну статическую функцию, то можно её превратить в обычную функцию, не меняя тела функции</li>
</ol><br />
<a rel="nofollow noopener noreferrer" href="https://github.com/ProfiGMan/Cmd" target="_blank" title="https://github.com/ProfiGMan/Cmd"><b><font size="5">GitHub</font></b></a></div>

]]></content:encoded>
			<dc:creator>Profi_GMan</dc:creator>
			<guid isPermaLink="true">https://www.cyberforum.ru/blogs/873846/5073.html</guid>
		</item>
		<item>
			<title>Qt Динамический перевод с русского на английский</title>
			<link>https://www.cyberforum.ru/blogs/873846/5069.html</link>
			<pubDate>Mon, 25 Dec 2017 09:31:55 GMT</pubDate>
			<description>Есть такая проблема в qt. Если реализовать динамический перевод в приложении, то получится, что...</description>
			<content:encoded><![CDATA[<div>Есть такая проблема в qt. Если реализовать динамический перевод в приложении, то получится, что русский перевод хранится в отдельном файле, а английский - оригинал, то есть например, <br />
<div class="codeblock"><table class="cpp-qt"><thead><tr><td colspan="2" id="904676001"  class="head">C++ (Qt)</td></tr></thead><tbody><tr class="li1"><td><div id="904676001" style="height: 46px" class="codeframe"><table><tr class="li1"><td class="ln" style="padding: 0px 10px 0px 5px;"><pre class="de1">1
</pre></td><td class="de1"><pre class="de1"><span class="kw5">QObject</span><span class="sy0">::</span><span class="me2">tr</span><span class="br0">&#40;</span><span class="st0">&quot;english text&quot;</span><span class="br0">&#41;</span></pre></td></tr></table></div></td></tr></tbody></table></div>А проблема вот в чём: если такое приложение запустить на английском, а потом перевести на русский, всё получится, но если запустить приложение на русском и перевести на английский, то ничего не произойдёт. <br />
Решить проблему просто: надо создать файл с переводом на английский(да, да, файл с переводом с английского на английский). <br />
Для этого я сделал себе скрипт:<br />
<br />
<div class="codeblock"><table class="bash"><thead><tr><td colspan="2" id="761740731"  class="head">Bash</td></tr></thead><tbody><tr class="li1"><td><div id="761740731" style="height: 190px" class="codeframe"><table><tr class="li1"><td class="ln" style="padding: 0px 10px 0px 5px;"><pre class="de1">1
2
3
4
5
6
7
8
9
10
</pre></td><td class="de1"><pre class="de1"><span class="co0">#!/bin/bash</span>
lupdate .<span class="sy0">/*</span>.pro <span class="co0"># Обновление переводов(вместо звёздочки, подставляем имя .про файла)</span>
<span class="co0">####### Сам перевод</span>
<span class="kw2">sed</span> <span class="st_h">'/source/! b;N;s/\(\([^&gt;]*\)&lt;\/.*\) type[^&gt;]*&gt;/\1&gt;\2/'</span> <span class="sy0">*</span>.ts <span class="sy0">&gt;</span> en_temp.ts <span class="co0"># вместо *.ts, ставим название английского перевода</span>
<span class="kw2">cat</span> en_temp.ts <span class="sy0">&gt;</span> <span class="sy0">*</span>.ts <span class="co0"># вместо *.ts, ставим название английского перевода</span>
<span class="kw2">rm</span> <span class="re5">-f</span> en_temp.ts
<span class="co0">#######</span>
lrelease .<span class="sy0">/</span>yourdroid.pro <span class="co0"># создание .qm(вместо звёздочки, подставляем имя .про файла)</span>
<span class="kw3">echo</span> ==== END ====
<span class="kw2">read</span> <span class="re5">-n</span> <span class="nu0">1</span></pre></td></tr></table></div></td></tr></tbody></table></div>Я достаточно долго бился с этой проблемой, вот и решил написать об этом</div>

]]></content:encoded>
			<dc:creator>Profi_GMan</dc:creator>
			<guid isPermaLink="true">https://www.cyberforum.ru/blogs/873846/5069.html</guid>
		</item>
	</channel>
</rss>
