Отвалилась тёмная тема в Opera mobile 10
Захожу время от времени с любимой нокии 5800 посмотреть на лор - а тут засада. Всё белое.
Upd: в предыдущий раз заходил с нокии в конце прошлого года, тёмная тема была.
Захожу время от времени с любимой нокии 5800 посмотреть на лор - а тут засада. Всё белое.
Upd: в предыдущий раз заходил с нокии в конце прошлого года, тёмная тема была.
Собираю кросскомпилятор arm-gcc с make -j6.
В первый выжрал все 8 гиг рамы и превед адские тормоза. Думал чутка памяти не хватает - добавил 10 гигов свопа - выжрало все и не подавилось, превед адские тормоза.
Как сию похабщину исправить?
Ось - Devuan chimera x64. Ничего не ковырял, обнов не ставил. В сабже нуб.
Раньше собирал под msys - был свой цирк с конями, но память не жрало как не в себя.
В общем купил SSD, фирменная утилита для него либо под 10 либо в сборке с live Fedora.
Записал на флешку live Fedora, для загрузки использую syslinux. Грузится, утилита вроде работает.
Хочу поставить рядом Void linux. По умолчанию и Fedora и Void linux ищут squashfs.img в папке LiveOS в корне флешки.
Как задать свой путь по умолчанию к squashfs.img? Ну или другое имя поиска.
Как восстановить почту? Чем проще, тем лучше. Локальный кэш остался.
Причина удаления - по-умолчанию в настройках стояло удалять старую почту.
Есть в библиотеке такой класс, TAutoClose
, освобождающий ресурсы своего члена класса, вызывая его метод Close()
, при выходе из области видимости. При этом глаза мозолит использование iObj
:
TAutoClose<RApaLsSession> cmd;
cmd.iObj.Connect();
cmd.iObj.Send();
Хочу так:
cmd.Connect();
cmd.Send();
Добавил реализацию оператора &(видел подобный фокус с оператором '*' для умных указателей), всё равно компилятор говорит, что не видит функции:
T& operator&() {
return iObj;}
Вот общий вид этой группы классов:
TAutoClose
освобождает ресурсы группы классов вида:
class RExample:
{
int handle;
public:
void Close() {}
}
И сам класс:
template <class T>
class TAutoClose
/**
@publishedAll
Automatically calls Close() on an object when that object goes out of scope.
The behaviour takes advantage of the fact that the compiler automatically
destroys objects that go out of scope.
*/
{
public:
inline ~TAutoClose();
private:
static void Close(TAny *aObj);
public:
/**
An instance of the template class.
*/
T iObj;
};
// Class TAutoClose
template <class T>
inline TAutoClose<T>::~TAutoClose()
/**
Destructor.
The implementation calls Close() on iObj, the instance of the template class.
*/
{iObj.Close();}
template <class T>
void TAutoClose<T>::Close(TAny *aObj)
{((T *)aObj)->Close();}
Функции в скрипте python выполняются в произвольном порядке. Я ожидаю, что функции выполняются друг за другом. Сам скрипт - это набор функций.
Вся логика находится в файле ‘init.py’(знаки подчеркивания в начале и конце имени файла режет парсер сайта).
Среди них две функции(модули piper и build_apps) запускают многопоточную сборку друг за другом, может из-за этого проблемы.
Исходный код - GitHub.
Ожидаемый лог:
Лог сборки:
Queue size: 92
Thread count: 6
Queue size: 8
Thread count: 6
pkg: Neverhood.pkg
pkg: Neverhood_cmdline.pkg
Target ScummVM5.mmp done!
Target Neverhoode.mmp done!
Target ScummVM1.mmp done!
Engine access.mmp done!
Engine adl.mmp done!Engine agi.mmp done!
Engine avalanche.mmp done!
Target ScummVM6.mmp done!
Target ScummVM2.mmp done!
Target ScummVM3.mmp done!
Engine buried.mmp done!
Target ScummVM7.mmp done!
Engine asylum.mmp done!
Target ScummVM4.mmp done!
Engine cge.mmp done!
Engine cge2.mmp done!
Engine chewy.mmp done!
Engine composer.mmp done!
Engine cine.mmp done!
Engine cryo.mmp done!
Далее много «Engine *.mmp done!»
Чяднт? P.S. Python 2.
Хочу использовать модуль питона в логах. Урезаная версия:
from datetime import datetime
print "Datetime: %s" %datetime.now()
print "Hello world!"
print "Datetime: %s" %datetime.now()
Выхлоп:
Datetime: 2021-06-20 22:21:39.796000
Hello world!
Datetime: 2021-06-20 22:21:39.796000
Вместо хелловорда поставьте тяжелую задачу, сборка буста например. Чяднт?
Я, автор релизов ScummVM для Symbian, прошу помочь перенести плагины к Eclipse с поддержкой Symbian на новое ядро. Исходный код — github.com/SymbianSource/oss.FCL.sftools.dev.ide.carbidecpp и github.com/SymbianSource/oss.FCL.sftools.dev.eclipseenv.carbideui. И справка SDK не подключается, тоже нужно починить.
Создаётся список(std::list) объектов с нетривиальным конструктором «на лету», элемент за элементом. Как их правильно инициализировать?
В памяти создается пустой массив uint32_t
для структуры:
struct Elf32_HashTable
{
uint32_t nBuckets;
uint32_t nChains;
uint32_t bucket[nBuckets];
uint32_t chain[nChains];
};
Размер массива вычисляется по формуле uint32_t sz = 2 + iNSymbols + iNSymbols/3 + iNSymbols%0x3;
, где nBuckets = iNSymbols/3 + iNSymbols%0x3;
.
Как можно заполнить поля bucket
и chain
без дополнительный указателей, причем заполняться будут в случайном порядке?
Можно заполнять через указатели pBucket = &buf[x]
, но хочется минимализма...
Программа работает с буфером готовых данных char*
. Используется две структуры:
struct Buffer
{
uint32_t bufsize;
Bufdata* data;
}
struct Bufdata
{
uint32_t datasize;
const uint32_t* data;
}
Код:
Buffer* buf = (Buffer*)rawDataAsCharArray;
Bufdata* bdata = buf->data;
printf(bdata->datasize); //упс, упало
Bufdata* data
и сделать так, то все норм:
Bufdata* bdata = (Bufdata*)(rawDataAsCharArray+sizeof(Buffer) );
printf(bdata->datasize); //ок
elf2e32 создает бинарные файлы для Symbian из elf.
Преимущества этой утилиты над аналогами:
Минус:
Перемещено Shaman007 из development
Написал программу которая должна удалять комментарии в файле исходного кода С++. Условия: // /* и */ не будут содержаться в самих комментариях, строках и символьных константах. Проблемы: '*/' сохраняется в файл. Код:
#include <iostream>
#include <fstream>
using namespace std;
const char *filename = "commandLine.h";
const char *filename2 = "commandLine_out.h";
int main()
{
ifstream in(filename, ios_base::in);
if(!in.is_open())
std::cout << "Input file not found!" << std::endl;
ofstream out(filename2);
if(!out.is_open())
std::cout << "Output file not found!" << std::endl;
string line;
bool inComment = false;
bool afterComment = false;
int i = 0;
while(getline(in, line))
{
i++;
line.append("\n");
// std::cout << inComment << std::endl;
if(afterComment == true)
{
// inComment = false;
afterComment = false;
}
if(line.find("//")!=std::string::npos)
inComment = true;
if(line.find("/*")!=std::string::npos)
inComment = true;
if(line.find("*/")!=std::string::npos)
inComment = false;
afterComment = true;
std::cout << i << " : " << inComment << "-" << afterComment << std::endl;
if((inComment == false)&&(afterComment == true))
{
out << line;
}
}
out.close();
in.close();
cout << "Hello world!" << endl;
return 0;
}
Решил собрать FFMPEG под Symbian. Цель - получить набор статических библиотек : compat, libavcodec, libavfilter, libavformat, libavresample ,libavutil, libpostproc, libswresample, libswscale.
Окружение : WinXP64 sp2, GCCE 4.4.1 от Codesourcery для Symbian, MinGW 4.8.1, Msys
Что сделано : взял с вики ffmpeg сборочный скрипт для Rasberry и доработал:
./configure --enable-cross-compile --cross-prefix=arm-none-symbianelf- --enable-static \
--disable-shared --arch=arm --target-os=symbian --cc=arm-none-symbianelf-gcc \
--enable-armv6t2 --cpu=armv6t2 --disable-mmx --incdir=epoc32\include\ffmpeg \
--disable-runtime-cpudetect --enable-gray --disable-programs --disable-doc \
--enable-rpath --disable-avdevice --enable-gpl --enable-nonfree \
--prefix=$EPOCROOT --sysinclude=/d/Symbian/S60_5th_Edition_SDK_v1.0/epoc32/include
В configure есть поддержка Symbian, был получен config.h и config.mak s активированными ассемблерными файлами под armv6t2.
symbian)
SLIBSUF=".lib"
enable dos_paths
add_cflags --include=$sysinclude/gcce/gcce.h -fvisibility=default --include=$sysinclude/symcpp.h
add_cppflags -D__GCCE__ -D__SYMBIAN32__ -DSYMBIAN_OE_POSIX_SIGNALS
;;
Проблемы: 1) Autoconf нашел лишь часть функций libc, например пропустил всё в math.h. Лог на http://pastebin.com/adatjSkB
2) при сборке в MSYS:
$ make
CC libavfilter/aeval.o
In file included from libavfilter/aeval.c:26:
./libavutil/avassert.h:30: fatal error: stdlib.h: No such file or directory
compilation terminated.
make: *** [libavfilter/aeval.o] Error 1
ЧЯДНТ?
Пытаюсь собрать libflac под Msys. на команду :
CFLAGS=-O1 configure -mcpu=armv5t --with-ogg-includes=«$EPOCROOT\epoc32\include\tremor» --includedir=$EPOCROOT/epoc32/include/libc --host=arm-none-symbianelf --prefix=$EPOCROOT/epoc32 -includes=$EPOCROOT\epoc32\include\tremor получаю :
checking for ANSI C header files... no checking for sys/types.h... no checking for sys/stat.h... no checking for stdlib.h... no checking for string.h... no checking for memory.h... no checking for strings.h... no checking for inttypes.h... no checking for stdint.h... no checking for unistd.h... no
Нужно получить статическую библиотеку