Author: Jan Christoph Uhde
Default Compiler Defines
Clang/LLVM: clang -dM -E -x c /dev/nullclang++ -dM -E -x c++ /dev/null GNU GCC/G++: gcc -dM -E -x c /dev/nullg++ -dM -E -x c++ /dev/null Hewlett-Packard C/aC++: cc -dM -E -x c /dev/nullaCC -dM -E -x c++ /dev/null IBM XL C/C++: xlc -qshowmacros -E /dev/nullxlc++ -qshowmacros -E /dev/null Intel ICC/ICPC: […]
Recompile and Test
When writing scripts or playing with new C++ language features I find it helpful if the code gets recompiled and executed as soon as I change a file in the source directory. I wrote a simple bash function that produces the desired effect and can be used independent of a […]
Access Private Members
Have you ever wondered if there is a standard conformant way to access a private member in C++. One could #define private publicor try to reinterpret_cast to a type with similar layout or violate the language in a similar way. So is there a better way to do it? The […]
Resize QEMU-Image
5GB are not enough for the root partition you have allocated for a VM? No problem! Lets fix it. You need to run all commands with root permissions and you need to change vm_image.qcow2 and /dev/vda to values that match your system. # all command need to be run as […]
Is there a `[“foo”,”bar”].join(” “)` in c++?
Recently i have been asked if there is python / javascript like join() in c++. Here is what it could look like:
Starting gparted on Debian
It seems that there has been some change in the X11 permission. This change prevents starting gparted when sued to root. As debian and ubuntu have remove gksu people need to handle the permissions themselves. The following command sequence will allow you to run `gparted`.
Tmux Configuration for Multiple Versions
The if-shell tmux-build-in combined with perl allows for shell independent version checking. The following set -g <something> is trivial and can be used for a wide range of options:
Show ISO Time-Stamps in Thunderbird
In order to fix the recent brokenness of Thunderbird’s displayed time you need to run as root the following commands: optionally (once Thunderbird is fixed the setting shown below should suffice): Go to Thunderbird’s advanced options Edit -> Preferences -> Advanced -> Config Editor and add a new key intl.locale.requested […]
Search and Replace in Vim
Often people ask how It is possible to live with an editor like Vim, that does not allow multi-line-editing and that has even trouble with search and replace. Here is my answer – As with most tools or languages (CMake, bash, … whatever you hate – maybe except for PHP) […]