Crawled properties are generated automatically by SharePoint while crawling published content that has the corresponding fields populated. For example, in order to get a CrawledProperty for "MyColumn", you need to have at least one item that has a value in that column.
After the next "Full Crawl", a Crawled Property for "MyColumn" will be created with a kind of Hungarian notation naming convention, typically something like "ows_MyColumn" or "ows_TEXT_MyColumn", etc. depending on the data type.
Managed Properties are sometimes automatically created by SharePoint based on the Crawl properties, mapping a specific crawled property to the Managed Property.
For example: In the above scenario a Managed Property may be created with a name like "OWSMyColumn" and have a mapping to the "ows_MyColumn" Crawled Property.
In SharePoint 2010 it was possible to configure the Search Service to automatically generate Managed Properties for each found Crawled Property, as explained here:
In SharePoint 2013, in theory the Managed Properties should be always automatically created, but I've seen that not happening sometimes. You can do this manually from Central Admin as explained in this TechNet article:
Another alternative to create both Crawled Properties and Managed Properties without requiring content creation and a search crawl, is to use PowerShell.
This post has sample code that will create the 2 types: