I keep getting this strange error  /usr/bin/ld: CMakeFiles/libdungeon.dir/src/main.cpp.o: in function `decltype (({parm#2}.serialize)({parm#1})) cereal::access::member_serialize&lt;cereal::BinaryOutputArchive, Character&gt;(cereal ::BinaryOutputArchive&amp;, Character&amp;)': main.cpp:(.text._ZN6cereal6access16member_serializeINS_19BinaryOutputArchiveE9CharacterEEDTcldtfp0_9serializefp_EERT_RT0_[_ZN6cereal6access16member_serializeINS_19BinaryOutputArchiveE9Chara cterEEDTcldtfp0_9serializefp_EERT_RT0_]+0x1f): undefined reference to `void Character::serialize&lt;cereal::BinaryOutputArchive&gt;(cereal::BinaryOutputArchive&amp;)' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/libdungeon.dir/build.make:119: bin/libdungeon] Error 1 make[1]: *** [CMakeFiles/Makefile2:96: CMakeFiles/libdungeon.dir/all] Error 2 make: *** [Makefile:104: all] Error 2    I made my classes super bare-bones but I'm still getting the error.  character.hpp:  #pragma once  #include &lt;string&gt;  #include &lt;cereal/archives/binary.hpp&gt;    class Character {      public:        Character(int t_level);      private:        friend class cereal::access;        template &lt;class Archive&gt;       void serialize(Archive &amp; ar);        int m_level = 0;    };   character.cpp:  #include "character.hpp"  using namespace std;    //Generic constructor   Character::Character(int t_level){      m_level = t_level;    }     template&lt;class Archive&gt;   void Character::serialize(Archive &amp; ar) {     ar (m_level);     }   main.cpp:   #include "character.hpp" #include &lt;fstream&gt; #include &lt;cereal/archives/binary.hpp&gt;  using namespace std; int main() {   Character test = Character(5);    std::ofstream ofs("archive", std::ios::binary);   cereal::BinaryOutputArchive archive(ofs);    archive(test);    return 0;  }   CMakeLists.txt:  # Basic setup cmake_minimum_required(VERSION 3.5) project (libdungeon LANGUAGES CXX VERSION 0.0.1) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)  # Directories with header files include_directories ("include")  # Setting compile flags SET(GCC_COVERAGE_COMPILE_FLAGS "-Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wpedantic") add_definitions(${GCC_COVERAGE_COMPILE_FLAGS}) set(CMAKE_EXPORT_COMPILE_COMMANDS ON)  #conan include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) conan_basic_setup()  # Libraries add_executable(libdungeon src/character.cpp src/main.cpp)  target_link_libraries(libdungeon ${CONAN_LIBS})   Any ideas? When I use a example file like the one found here , with a similar cmake file everything works fine.
Quote from :     The only portable way of using templates at the moment is to implement them in header files by using inline functions.   Why is this?  (Clarification: header files are not the only portable solution. But they are the most convenient portable solution.)
Prove that $f'(0)$ exists and $f'(0) = b/(a - 1)$ Adding tags to files in OS X: How to use, where are tags stored, and will they work on a network? I've heard it is possible to add tags to a file's meta data in OS X, and have Spotlight search through such tags.   In a nutshell, how would one access this feature in Finder &ndash; not Spotlight (Command+Space) &ndash; but the adding of tags themselves? Where are these tags stored?  Do they go in .DS_Store (I tend to delete those!) or elsewhere in the filesystem? Does this tagging mechanism work on removable drives?  What are the requirements? Does this tagging mechanism work over a network share?  I have some Windows SMB network shares at home that I frequently store files on.  Would it work on those or is another configuration required? Aside from Spotlight, are there any command-line tools for searching through or accessing the tag data for files?   Thank you! I'm currently reading Evans' PDE book. In it he claims that for $f \in C^2_c(\mathbb{R}^n)$ $$\frac{f(x + he_i) - f(x)}{h} \to \frac{\partial}{\partial x_i}f(x)$$ and $$\frac{\frac{\partial}{\partial x_i}f(x + he_j) - \frac{\partial}{\partial x_i}f(x)}{h} \to \frac{\partial^2}{\partial x_jx_i}f(x)$$ uniformly as $h \to 0$.  My question is why must the convergence be uniform?  Thanks in advance. Looking for Space Exploration Book which is collection of different sub-stories The Book is about an earthship exploring the frontiers that I read as a kid (80's). All the stories are told by the same character but different encounters and events.    The first story is about the crew exploring the planet in a number of separate ships when one of them is taken over by a telepathic alien. As the ship returns however the surprise is sprung on the alien that the Mother ship is Computer controlled. Another is the ship shrinking and then finding after its shrunk beyond the atom that it comes back in as gigantic compared to the Universe in a closed loop.   Hopefully that's enough to trigger a memory. Skype doesn't work in Ubuntu 14.04 Morphing only a part of a full path in tikz This might be a tikz newbie question but I have some trouble solving this.  I want to draw and fill a rectangular path where path morphing should be applied only to the upper side of the shape, more specifically I want to have an upper part with random steps. The rest of the path (left, lower and right sides) should just be straight lines. The shape should be closed and filled with one color.   My problem is that I cannot figure out how to apply the morphing only to the upper side and I suppose I cannot break up the path into different subpaths since I want to fill the final shape. Is there a way to use the morphing only on a part of the full path? Another problem is that the cycle command does not really close the shape at the upper left corner.  I tried to find a solution in the tikz manual but there was nothing that really helped me.  Here is some example code:  \documentclass[tikz, border=10pt]{standalone} \usepackage{tikz}  \begin{document}  \usetikzlibrary{decorations.pathmorphing} \begin{tikzpicture}  \draw[decorate, decoration={random steps,segment length=3.0mm, amplitude=2.0mm}, thick, rounded corners=1ex, fill=brown!70] (0,0) -- (4,0) -- ++(0, -1) -- ++(-4,0) -- cycle;   \end{tikzpicture} \end{document} Extruding a circular shape from a non-circular object I need to extrude a circular shape from a surface that's basically just a grid of quads. What's the best practice to do this without screwing up the topology too much?  I basically want to have a circular face I can extrude, in order to have a cylinder like protuberance on the object, something like this: It's time for drag and drop! I often find myself wishing SO supported drag and drop. For example I drag a tag to my favs and it would add it, or when searching by tag I would like to drag the tag to the search box and get [asp.net] added in the search box.   Does it make sense to add this feature or is it just too much work for so little use? Ship an application with a database What's the difference between "cardinal" and "ordinal" as adjectives? How to create or recover Windows Bootloader after deleting Ubuntu boot drive I have a computer that dual-boots (or tri-boots) Windows 8 Release Preview, Windows 7, and Ubuntu 12.04. Grub boots between Windows 8 and Ubuntu; for which I use primarily. Recently, I decided to remove Ubuntu, as I hardly used it. I deleted the Ubuntu partition accidentally before replacing the Grub bootloader. Now, whenever I want to boot the machine, it gives me the "grub-rescue" prompt -- I am unable to boot into either Windows (8 nor 7), nor Ubuntu (except via USB, of course). I do not have any Windows 7/8 recovery media, so that isn't an option. Please note that after I deleted the Ubuntu partition, I put the PC into hibernate, and then turned it on. This means the C:\ [Windows 8] drive cannot be mounted. I don't know if that is bad, but it definitely doesn't make things better.  I am currently booting Ubuntu via USB, in an effort to restore the Windows bootloader. I have looked into using boot-repair to solve the problem using the instructions , although after attempting to apply the changes, it gave the error: "Please install the [mbr] packages. Then try again." I don't know why I'm getting this error; is there a way to install the 'mbr packages?' I honestly don't know what exactly they are, nor how to install them. Are there any other options I have not yet exhausted to be able to boot back into Windows, in the case that there is a better way? I want to set the bootloader to boot into Windows 8, but booting into either Windows 7 or 8 is fine (I can use EasyBCD from there). Is there a simple solution to this? I've checked BIOS, and I haven't been able to find a way to boot into Windows. The usage of singular and plural has always been confusing for me.   I often see sentences like these         People are using cell phones.   People are using a cell phone.      Does the first sentence mean everyone has a phone and they are all using their own?  Does the second sentence mean they are sharing one cell phone?   If I see a group of people holding a cell phone in their hand(s), &lt;- even this is confusing for me, should I use the first sentence then?   Another example: you see two men, and both of them are carrying a bag. Which sentence should I say/use?        They are carrying backpacks          They are carrying a backpack      Could you please make it clear for me? How to find the shortest string in a list in Python Google Maps API map doesn't appear How to set custom DNS server for Chrome browser? I have a local DNS server that resolves all URLs *.domain.tld to 127.0.0.1. Also, I have the production server with the same address *.domain.tld. They have the same names, because subdomains interact with each other, and I have hardcoded domain URLs. I can't change them in the production server.  The problem is to reach the production server from my developer computer without touching the DNS server and /etc/hosts.  I found some options for Chrome such as --dns-server, --host-rules, but none is working. I have Google Chrome 23.0.1271.64 and Chromium 22.0.1229.94 on Ubuntu 12.10 64-bit. How do I create a permanent Bash alias? I would like to create an alias to rm command in order to have a confirmation message after executing this command. So I am creating an alias like this alias rm='rm -i'. But as far as I know this is a temporary alias and it lives until you close the terminal.  As it is explained  to save alias permanently I need to execute ~/.bash_aliases or ~/.bashrc commands in terminal and add my alias there. But when I execute ~/.bashrc I get following error message :  bash: /home/bakhtiyor/.bashrc: Permission denied   When I run ~/.bash_aliases I get another error message like this:  bash: /home/bakhtiyor/.bash_aliases: File or directory doesn't exist.   What is the actual problem and how can I solve it? Can I use Bluray as a boot cd? Is it worth it to upgrade a Toshiba Satellite C55-A5300 laptop given the latest productivity software requirements? I would like to upgrade a Toshiba Satellite C55-A5300 laptop so it can be as useful as it can be nowadays. I haven’t needed to use much software for a few years now, and I’m not able to gauge whether a maxed out upgrade of this laptop would be up to running the latest versions of MS Office and Acrobat smoothly. Maybe even run some Photoshop and Lightroom? I want to install the best CPU that will work optimally within the parameters of this laptop, including the laptop’s cooling capabilities. I ultimately want improved performance, but I want the performance to be as smooth as possible. From what I gather the Pentium 2030M is the best processor this motherboard will accept. Am I on the right track? I also plan to fully upgrade the memory and the hard disk speed with respective upgrades. What is the max memory per RAM slot (2 total)? What is the fastest speed of RAM I can use?  Copied from the Toshiba spec sheet:  Processor and Graphics Intel® Celeron® Processor 1037U o (2M Cache, 1.80GHz) Mobile Intel® NM70 Express Chipset Mobile Intel® HD graphics with shared graphics memory Memory Memory Configured with 4GB DDR3 1333MHz (max 16GB) 2 main memory slots. One slot is occupied Storage Drive 500GB (5400 RPM) Serial ATA hard disk drive Power 45W (19V 2.37A) 100-240V/50-60Hz AC Adapter Mounting filesystem with special user id set There has been a significant drop (90%) in traffic from Google to one of my well-established sites (6+ years) in the last week. Searches show that the top 3 wide keywords all dropped 4 spots. Searches for other keywords do not show ANY results in the first 10 to 25 pages of results, while previously one 1st or 2nd page at most.  Since there are , the question really is:  What steps are necessary to figure out what caused such a drop?  There have been no major changes during this period or the last month on the site and certainly not in the homepage which has dropped in rank. Over all the years of running this site and plenty of others, I have never experienced this. There are is duplicate content on my site and I have rigorously used canonical links for the last few years to ensure it is not misinterpreted as such.