--- ptex-2.3.0/src/ptex/PtexReader.h.orig	2018-10-31 07:45:13.633502400 +0300
+++ ptex-2.3.0/src/ptex/PtexReader.h	2018-10-31 07:56:59.554742500 +0300
@@ -35,6 +35,23 @@
 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
 */
+
+#ifndef PTEXAPI
+#  if defined(_WIN32) || defined(_WINDOWS) || defined(_MSC_VER)
+#    ifndef PTEX_STATIC
+#      ifdef PTEX_EXPORTS
+#         define PTEXAPI __declspec(dllexport)
+#      else
+#         define PTEXAPI __declspec(dllimport)
+#      endif
+#    else
+#      define PTEXAPI
+#    endif
+#  else
+#    define PTEXAPI
+#  endif
+#endif
+
 #include <stdio.h>
 #include <zlib.h>
 #include <vector>
@@ -310,6 +327,7 @@
 	    }
 	};
 
+
 	Entry* newEntry(uint8_t keysize, const char* key, uint8_t datatype, uint32_t datasize, size_t& metaDataMemUsed)
 	{
 	    std::pair<MetaMap::iterator,bool> result =
@@ -333,7 +351,7 @@
             return e;
         }
 
-        Entry* getEntry(int index);
+        PTEXAPI Entry* getEntry(int index);
 
         PtexReader* _reader;
         typedef std::map<std::string, Entry> MetaMap;
