is char signed or unsigned?

工作这么多年,一直认为char是有符号的,而事实上gcc和vs默认也是有符号,但是c规范里实际并没有指明char是有符号还是无符号,所以ch

Qt5 CMake cross compile

cmake_minimum_required(VERSION 2.8) if (${ARM}) set(CMAKE\_SYSTEM\_NAME Linux) set(CMAKE\_SYSTEM\_PROCESSOR arm) set(CMAKE_STAGING_PREFIX $ENV{HOME}/dev/kndos/rootfs) set(CMAKE\_SYSROOT ${CMAKE\_STAGING\_PREFIX}) set(CMAKE_FIND_ROOT_PATH /usr/lib/arm-linux-gnueabihf ${CMAKE\_STAGING\_PREFIX}) set(CMAKE_LIBRARY_ARCHITECTURE arm-linux-gnueabihf) set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc) set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++) set(CMAKE\_FIND\_ROOT\_PATH\_MODE\_INCLUDE ONLY) set(CMAKE\_FIND\_ROOT\_PATH\_MODE\_PACKAGE ONLY) set(CMAKE\_FIND\_ROOT\_PATH\_MODE\_LIBRARY ONLY) set(CMAKE\_FIND\_ROOT\_PATH\_MODE\_PROGRAM NEVER) endif () project(tqml) set(CMAKE_CXX_STANDARD 14) set(CMAKE\_AUTOMOC ON) set(CMAKE\_AUTORCC ON) set(CMAKE\_AUTOUIC ON) find\_package(Qt5 COMPONENTS Widgets Qml Quick REQUIRED) if (${CMAKE\_CROSSCOMPILING}) set(HOST_QT_BIN /usr/lib/x86_64-linux-gnu/qt5/bin) set\_target\_properties(Qt5::uic PROPERTIES IMPORTED\_LOCATION ${HOST\_QT\_BIN}/uic) set\_target\_properties(Qt5::moc PROPERTIES IMPORTED\_LOCATION ${HOST\_QT\_BIN}/moc) set\_target\_properties(Qt5::rcc PROPERTIES IMPORTED\_LOCATION ${HOST\_QT\_BIN}/rcc) endif () add\_executable(${PROJECT\_NAME} main.cpp main.qml main.qrc) target\_link\_libraries(${PROJECT\_NAME} Qt5::Widgets

Git merge two repositories (ZZ)

转自 https://stackoverflow.com/questions/2428137/how-to-rebase-one-git-repository-onto-another-one If A and B are not the same repo (you created B by using the latest working copy you had), you have to use a graft to pretend that they have common history. Let’s assume you’ve added A as a remote for B as per VonC’s answer, and the repo looks like this1:

OpenAPI初体验

问题的一开始源于客户和服务部门抱怨我的REST API文档写得不好,然后又了解到 django rest framework 利用 coreapi 能自动生成文档,再就是看到 swagger.io 上说得天花乱坠的,Op

nginx如何修改charset

需求 将某个不符合json规范的响应 application/json;charset=gb2312 转成 application/json;charset=utf-8 ngx_http_charset_module? 根据官方文档,ngx_http_charset_module 只支持单字节的charsets,而g

如何上传package到pypi

首先访问 pypi 创建一个帐号,并且需要验证一个邮箱,注意网易163邮箱收不到验证的邮件。 安装上传工具 pip install --user twine 执行上传命令 python setup.py sdist bdist\_wheel twine upload dist/\* 注意,dis

Debian run jar like a native program

sudo apt install binfmt-support jarwrapper 比如 swagger-codegen wget -O ~/.local/bin/swagger-codegen https://oss.sonatype.org/content/repositories/releases/io/swagger/swagger-codegen-cli/2.2.1/swagger-codegen-cli-2.2.1.jar chmod a+x ~/.local/bin/swagger-codegen # run swagger-codegen

cmake工程使用distcc

distcc可以加速编译,但是遇到cmake可能就需要处理下。 问题 distcc在 /usr/lib/distcc 中放了各编译器的soft link(如cc/gcc等等),如

cmake笔记

list 函数中的list变量要的是名称 generate expression只能在很少的地方用,if里不能用 equal比较数字,strequal比较字符串 字符串可

sudo保持环境变量

编译Linux内核的最后是make modules_install install,这两个一般都需要root权限,即sudo,而一般我交叉编译内核时都是在.bashrc中e

distcc加速内核编译

Linux内核编译实在是费时间的事,搞内核移植的时候总要编译,生命有一部分就浪费在等内核编译完成上,有心想买个HP的工作站,看了下Z840的

ssh不检查server变化

嵌入式linux开发时经常需要远程登录到板上,但由于开发过程还经常会重新下载内核和文件系统,导致登录时总提示host变了,blablabla

bbb u-boot SPI 启动

beagle bone black的u-boot编译时已经为SPI准备好了 MLO.byteswap,这个文件应该直接写入到SPI flash的偏移0位置,根据am

Debian NAT共享上网

如果Linux主机有两个网卡,比如一个有线、一个无线,当无线连接后,其他机器即可通过有线共享上网,为了方便叙述,假设环境如下: A机器有两块网

Debian Epson L455 打印机

要使用打印机必须要在本机(或局域网其他机器)上安装打印服务,L455是网络打印机,需要IPP协议,而mDNS-scan和avahi-util