CMake: Skip Compiler Check
CMake will try to check compiler is working or not if project language was set to C/CXX. However, sometimes we just want to skip this test…
CMake will try to check compiler is working or not if project language was set to C/CXX. However, sometimes we just want to skip this test…
1 | curl -H "Authorization: token <OAUTH-TOKEN>" https://api.github.com |
1 | # Create a new release and get upload url |
Yesterday successfully cross compiled curl with mbedTLS, but there was an error when trying to access a https link:
1 | SSL certificate problem: unable to get local issuer certificate |
To fix it, download CA certificate to local machine and export environment variable CURL_CA_BUNDLE
:
1 | wget https://curl.haxx.se/ca/cacert.pem |
This post records some errors I have met during set up an Android build pipeline with Travis CI.
When I was in university, I had developed a BLE based UAV controller based on an open source Android BLE library. The library itself is quite easy to use but I decided to develop an Android BLE app with native Android BLE API, which can connect and communicate with BLE GATT devices.
“Swipe down/Pull down to refresh” is a widely used feature in various kinds of apps. Let’s see how can we do that via SwipeRefreshLayout in AndroidX.
When we try to access a serial port device(i.e /dev/ttyUSB0) as a normal user, a Permission denied error will occur. Let’s take a look at permissions for those serial port devices:
1 | ll /dev/ttyUSB0 |
As we can see, except root user, dialout group also has permissions to those serial port tty devices. Hence, to allow normal user access serial port devices, adding normal user to dialout group will suffice:
1 | sudo usermod -aG dialout $USER |
There are several ways to achieve IPC, shared memory is one of those. In this post, we will try to create shared memory via mmap module in python.
kazam is an easy to use screen record tool for Linux. User can install it via apt install kazam
on Debian based distribution. After recording, kazam supports to save as mp4 files, which are 4:4:4 by default. To make it available for typical player on other platform, we can covert it to 4:2:0:
1 | ffmpeg -i ${original.mp4} -vf format=yuv420p ${new.mp4} |