vmime icon indicating copy to clipboard operation
vmime copied to clipboard

Vmime makes with errors on OS X 10.11.12.

Open peterxu30 opened this issue 8 years ago • 13 comments

I'm trying to build vmime but am running into errors when running "make". The 'cmake -G "Unix Makefiles"' command runs fine and I have all the required libraries. The output is as follows:

/Users/Peter/Documents/C++/vmime/src/vmime/platforms/posix/posixSocket.cpp:753:52: error: use of undeclared identifier 'MSG_NOSIGNAL' const ssize_t ret = ::send(m_desc, buffer, size, MSG_NOSIGNAL); ^ /Users/Peter/Documents/C++/vmime/src/vmime/platforms/posix/posixSocket.cpp:779:52: error: use of undeclared identifier 'MSG_NOSIGNAL' const ssize_t ret = ::send(m_desc, buffer, count, MSG_NOSIGNAL); ^ /Users/Peter/Documents/C++/vmime/src/vmime/platforms/posix/posixSocket.cpp:854:75: error: expected value in expression ...(_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && ! _GNU_SOURCE ^ /Users/Peter/Documents/C++/vmime/src/vmime/platforms/posix/posixSocket.cpp:863:21: error: no matching constructor for initialization of 'const std::string' (aka 'const basic_string<char, char_traits, allocator >') ...const std::string strmsg(strerror_r(err, errbuf, sizeof(errbuf))); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I'm new to C++ and am not sure what the issue is. I'm running El Capitan 10.11.12. Any help would be appreciated!

peterxu30 avatar Apr 21 '16 22:04 peterxu30

Hello, I fixed the errors about MSG_NOSIGNAL (use SO_NOSIGPIPE on Mac OS instead): 4d1a6ad2f267e3b83f7c04122af8d8e7ee9a2113

vincent-richard avatar Apr 25 '16 06:04 vincent-richard

This error is still there:

/Users/Peter/Documents/C++/vmime/src/vmime/platforms/posix/posixSocket.cpp:854:75: error: 
expected value in expression
...(_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && ! _GNU_SOURCE
^

pasnox avatar Sep 30 '16 12:09 pasnox

@vincent-richard What does that fix mean in practice? Is there a committed patch? As @pasnox notes, the build error is still there.

gustafbstromuu avatar Jan 24 '17 08:01 gustafbstromuu

Hi @vincent-richard, we have the same problem of @pasnox!

franciscovn avatar Apr 25 '17 11:04 franciscovn

Hello, here is a patch with a more reliable detection of the strerror_r variant: http://www.vmime.org/public/download/patches/vmime-20170426-strerror_r_variant.patch

Please let me know whether it works!

vincent-richard avatar Apr 26 '17 17:04 vincent-richard

Hi @vincent-richard, that problem was solved. But now I have the following error:

/Users/francisco/Documents/vmime/src/vmime/platforms/posix/posixHandler.cpp:239:16: error: use of undeclared identifier
      'HOST_NAME_MAX'
        char hostname[HOST_NAME_MAX];

franciscovn avatar May 05 '17 12:05 franciscovn

Hello, I committed some changes, please confirm that the issue is now resolved.

vincent-richard avatar May 08 '17 19:05 vincent-richard

@vincent-richard I could finish the compilation with some tinkering, I'll do some more tests and give some feedback.

The tinkering:

  • For some reason I couldn't link with libicu, I had to remove it from the CMake
  • The Cmake found the 32x iconv and I had to change it to the 64x (/usr/lib/libiconv.dylib)

franciscovn avatar May 23 '17 11:05 franciscovn

@vincent-richard Hi, the config.hpp file isn't where it should be.

franciscovn avatar Jun 28 '17 13:06 franciscovn

Could you give me some details about this? Where is it actually generated, and where should it be?

vincent-richard avatar Jun 28 '17 13:06 vincent-richard

The file should be at "src/vmime/", where vmime.hpp includes it, but the file isn't there. You can check here on github: https://github.com/kisli/vmime/tree/master/src/vmime

franciscovn avatar Jun 28 '17 13:06 franciscovn

This is a generated file, that's why it is not versioned, and will never be. It is generated when you run "cmake", if not then you should check the cmake output log.

vincent-richard avatar Jun 28 '17 13:06 vincent-richard

Hi Vincent, I haven't executed make install. My mistake.

franciscovn avatar Jun 28 '17 14:06 franciscovn