includeos / hello_world

Basic IncludeOS example
Apache License 2.0
10 stars 7 forks source link

Building on Mac OS X 10.14.3 (Mojave) with Xcode 10.2.1 doesn't work #6

Open sseefried opened 5 years ago

sseefried commented 5 years ago

I've been trying to follow the build instructions in the README but they don't seem to work for Mac OS X 10.14.3 with Xcode 10.2.1 installed. I think this because the installed version of clang is 10.0.1 not 6.0

$ clang -v
Apple LLVM version 10.0.1 (clang-1001.0.46.4)
Target: x86_64-apple-darwin18.2.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

conan install seems to work for the clang-6.0-linux-x86_64 profile

$ conan install ../hello_world -pr clang-6.0-linux-x86_64
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/conans/client/settings_preprocessor.py:28: UserWarning: Setting 'cppstd' is deprecated in favor of 'compiler.cppstd'
  warnings.warn("Setting 'cppstd' is deprecated in favor of 'compiler.cppstd'")
Configuration:
[settings]
arch=x86_64
arch_build=x86_64
build_type=Release
compiler=clang
compiler.libcxx=libc++
compiler.version=6.0
cppstd=17
os=Linux
os_build=Linux
[options]
[build_requires]
*: binutils/2.31@includeos/toolchain
[env]
CC=clang-6.0
CFLAGS=-msse3 -mfpmath=sse -O2 -g
CXX=clang++-6.0
CXXFLAGS=-msse3 -mfpmath=sse -O2 -g
WARN: botan/2.8.0@includeos/stable requirement libcxx/[>=5.0]@includeos/stable overridden by includeos/0.15.1-5@includeos/latest to libcxx/7.0.1@includeos/stable 
WARN: openssl/1.1.1@includeos/stable requirement libcxx/[>=5.0]@includeos/stable overridden by s2n/0.8@includeos/stable to libcxx/7.0.1@includeos/stable 
Version ranges solved
    Version range '>=0.14.0,include_prerelease=True' required by 'conanfile.txt' resolved to 'includeos/0.15.1-5@includeos/latest' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache
    Version range '>=5.0' required by 'includeos/0.15.1-5@includeos/latest' resolved to 'libcxx/7.0.1@includeos/stable' in local cache
    Version range '>=1.1.18' required by 'libcxx/7.0.1@includeos/stable' resolved to 'musl/1.1.18@includeos/stable' in local cache
    Version range '>=5.0' required by 'botan/2.8.0@includeos/stable' valid for downstream requirement 'libcxx/7.0.1@includeos/stable'
    Version range '>=1.1.18' required by 'botan/2.8.0@includeos/stable' resolved to 'musl/1.1.18@includeos/stable' in local cache
    Version range '>=5.0' required by 'openssl/1.1.1@includeos/stable' valid for downstream requirement 'libcxx/7.0.1@includeos/stable'
    Version range '>=0.14.0,include_prerelease=True' required by 'conanfile.txt' resolved to 'chainloader/0.15.1-5@includeos/latest' in local cache
    Version range '>=0.16.0' required by 'conanfile.txt' resolved to 'vmrunner/0.16.0@includeos/latest' in local cache
    Version range '>=0.15.0' required by 'conanfile.txt' resolved to 'vmbuild/0.15.0@includeos/latest' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache

conanfile.txt: Installing package
Requirements
    GSL/2.0.0@includeos/stable from 'includeos' - Cache
    botan/2.8.0@includeos/stable from 'includeos' - Cache
    http-parser/2.8.1@includeos/stable from 'includeos' - Cache
    includeos/0.15.1-5@includeos/latest from 'includeos' - Cache
    libcxx/7.0.1@includeos/stable from 'includeos' - Cache
    libcxxabi/7.0.1@includeos/stable from 'includeos' - Cache
    libgcc/1.0@includeos/stable from 'includeos' - Cache
    libunwind/7.0.1@includeos/stable from 'includeos' - Cache
    musl/1.1.18@includeos/stable from 'includeos' - Cache
    openssl/1.1.1@includeos/stable from 'includeos' - Cache
    rapidjson/1.1.0@includeos/stable from 'includeos' - Cache
    s2n/0.8@includeos/stable from 'includeos' - Cache
    uzlib/v2.1.1@includeos/stable from 'includeos' - Cache
Python requires
    conan-tools/1.0.0@includeos/stable
Packages
    GSL/2.0.0@includeos/stable:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    botan/2.8.0@includeos/stable:86ea9478749b6b151377a318eab036c1a5c76d6f - Cache
    http-parser/2.8.1@includeos/stable:c78b30f867758f14db30f570224a7f03bf7ddfab - Cache
    includeos/0.15.1-5@includeos/latest:e70c8745fe4aa8eea40e3372373944d2a5e7f7e2 - Cache
    libcxx/7.0.1@includeos/stable:1a6e18396c747cde73f080a5f492b49fcefbb012 - Cache
    libcxxabi/7.0.1@includeos/stable:5d88dc4b26402479b7aa0fcb29ca9b9c28da4c9f - Cache
    libgcc/1.0@includeos/stable:5d88dc4b26402479b7aa0fcb29ca9b9c28da4c9f - Cache
    libunwind/7.0.1@includeos/stable:c78b30f867758f14db30f570224a7f03bf7ddfab - Cache
    musl/1.1.18@includeos/stable:b6ca6a0ffff110bf17b843d4258482a94281eb43 - Cache
    openssl/1.1.1@includeos/stable:a15f421984675bd76e8df07971c322909358ebd9 - Cache
    rapidjson/1.1.0@includeos/stable:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    s2n/0.8@includeos/stable:c66c28cef47ff50b0bffd409ac60e5bcc7601da5 - Cache
    uzlib/v2.1.1@includeos/stable:c78b30f867758f14db30f570224a7f03bf7ddfab - Cache
Build requirements
    binutils/2.31@includeos/toolchain from 'includeos' - Cache
    chainloader/0.15.1-5@includeos/latest from 'includeos' - Cache
    vmbuild/0.15.0@includeos/latest from 'includeos' - Cache
    vmrunner/0.16.0@includeos/latest from 'includeos' - Cache
Build requirements packages
    binutils/2.31@includeos/toolchain:0b18460aeb1058d7174e2cd4df4095ee9cfb1cb6 - Cache
    chainloader/0.15.1-5@includeos/latest:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    vmbuild/0.15.0@includeos/latest:44fcf6b9a7fb86b2586303e3db40189d3b511830 - Cache
    vmrunner/0.16.0@includeos/latest:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache

GSL/2.0.0@includeos/stable: Already installed!
binutils/2.31@includeos/toolchain: Already installed!
chainloader/0.15.1-5@includeos/latest: Already installed!
http-parser/2.8.1@includeos/stable: Already installed!
libcxxabi/7.0.1@includeos/stable: Already installed!
libgcc/1.0@includeos/stable: Already installed!
libunwind/7.0.1@includeos/stable: Already installed!
musl/1.1.18@includeos/stable: Already installed!
rapidjson/1.1.0@includeos/stable: Already installed!
uzlib/v2.1.1@includeos/stable: Already installed!
vmbuild/0.15.0@includeos/latest: Already installed!
vmrunner/0.16.0@includeos/latest: Already installed!
libcxx/7.0.1@includeos/stable: Already installed!
botan/2.8.0@includeos/stable: Already installed!
openssl/1.1.1@includeos/stable: Already installed!
s2n/0.8@includeos/stable: Already installed!
includeos/0.15.1-5@includeos/latest: Already installed!
conanfile.txt: Applying build-requirement: binutils/2.31@includeos/toolchain
conanfile.txt: Applying build-requirement: chainloader/0.15.1-5@includeos/latest
conanfile.txt: Applying build-requirement: vmrunner/0.16.0@includeos/latest
conanfile.txt: Applying build-requirement: vmbuild/0.15.0@includeos/latest
conanfile.txt: Generator virtualenv created activate.sh
conanfile.txt: Generator virtualenv created deactivate.sh
conanfile.txt: Generator cmake created conanbuildinfo.cmake
conanfile.txt: Generator txt created conanbuildinfo.txt
conanfile.txt: Generated conaninfo.txt
conanfile.txt: Generated graphinfo

But as soon as I try to build I get the following:

$ source activate.sh
$ cmake ../hello_world/
CMake Error at /usr/local/Cellar/cmake/3.14.5/share/cmake/Modules/CMakeDetermineCCompiler.cmake:49 (message):
  Could not find compiler set in environment variable CC:

  clang-6.0.
Call Stack (most recent call first):
  CMakeLists.txt:3 (project)

CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
See also "/Users/sseefried/code/build-hello-world/CMakeFiles/CMakeOutput.log".

A quick check reveals that clang-6.0 is nowhere to be found on my Mojave installation.

So, I decided I would try the default profile. However this now fails during the conan install command:

$ conan install ../hello_world -pr default
Configuration:
[settings]
arch=x86_64
arch_build=x86_64
build_type=Release
compiler=apple-clang
compiler.libcxx=libc++
compiler.version=10.0
os=Macos
os_build=Macos
[options]
[build_requires]
[env]

WARN: botan/2.8.0@includeos/stable requirement libcxx/[>=5.0]@includeos/stable overridden by includeos/0.15.1-5@includeos/latest to libcxx/7.0.1@includeos/stable 
WARN: openssl/1.1.1@includeos/stable requirement libcxx/[>=5.0]@includeos/stable overridden by s2n/0.8@includeos/stable to libcxx/7.0.1@includeos/stable 
Version ranges solved
    Version range '>=0.14.0,include_prerelease=True' required by 'conanfile.txt' resolved to 'includeos/0.15.1-5@includeos/latest' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache
    Version range '>=5.0' required by 'includeos/0.15.1-5@includeos/latest' resolved to 'libcxx/7.0.1@includeos/stable' in local cache
    Version range '>=1.1.18' required by 'libcxx/7.0.1@includeos/stable' resolved to 'musl/1.1.18@includeos/stable' in local cache
    Version range '>=5.0' required by 'botan/2.8.0@includeos/stable' valid for downstream requirement 'libcxx/7.0.1@includeos/stable'
    Version range '>=1.1.18' required by 'botan/2.8.0@includeos/stable' resolved to 'musl/1.1.18@includeos/stable' in local cache
    Version range '>=5.0' required by 'openssl/1.1.1@includeos/stable' valid for downstream requirement 'libcxx/7.0.1@includeos/stable'
    Version range '>=0.14.0,include_prerelease=True' required by 'conanfile.txt' resolved to 'chainloader/0.15.1-5@includeos/latest' in local cache
    Version range '>=0.16.0' required by 'conanfile.txt' resolved to 'vmrunner/0.16.0@includeos/latest' in local cache
    Version range '>=0.15.0' required by 'conanfile.txt' resolved to 'vmbuild/0.15.0@includeos/latest' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache
    Version range '>=1.0.0' required by 'python_require' resolved to 'conan-tools/1.0.0@includeos/stable' in local cache

conanfile.txt: Installing package
Requirements
    GSL/2.0.0@includeos/stable from 'includeos' - Cache
    botan/2.8.0@includeos/stable from 'includeos' - Cache
    http-parser/2.8.1@includeos/stable from 'includeos' - Cache
    includeos/0.15.1-5@includeos/latest from 'includeos' - Cache
    libcxx/7.0.1@includeos/stable from 'includeos' - Cache
    libcxxabi/7.0.1@includeos/stable from 'includeos' - Cache
    libgcc/1.0@includeos/stable from 'includeos' - Cache
    libunwind/7.0.1@includeos/stable from 'includeos' - Cache
    musl/1.1.18@includeos/stable from 'includeos' - Cache
    openssl/1.1.1@includeos/stable from 'includeos' - Cache
    rapidjson/1.1.0@includeos/stable from 'includeos' - Cache
    s2n/0.8@includeos/stable from 'includeos' - Cache
    uzlib/v2.1.1@includeos/stable from 'includeos' - Cache
Python requires
    conan-tools/1.0.0@includeos/stable
Packages
    GSL/2.0.0@includeos/stable:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    botan/2.8.0@includeos/stable:f8ecd7f1175faff86457d736095a6f47b1759f26 - Missing
    http-parser/2.8.1@includeos/stable:bad7dd1e4b5daf2b9ae8e3ca2e4397d55b8d3583 - Missing
    includeos/0.15.1-5@includeos/latest:6e8177bc10f85a7444aefd7f80d4db2104213df7 - Missing
    libcxx/7.0.1@includeos/stable:859c3dd37cea3d7f1c0ba065ee6bb39194a51bfe - Missing
    libcxxabi/7.0.1@includeos/stable:f8bda7f0751e4bc3beaa6c3b2eb02d455291c8a2 - Missing
    libgcc/1.0@includeos/stable:f8bda7f0751e4bc3beaa6c3b2eb02d455291c8a2 - Missing
    libunwind/7.0.1@includeos/stable:bad7dd1e4b5daf2b9ae8e3ca2e4397d55b8d3583 - Missing
    musl/1.1.18@includeos/stable:2448980ddb1c49ac3794280d40f2ac0c21768561 - Missing
    openssl/1.1.1@includeos/stable:c823e04a13cd7ded108b7538622b8b612a4402e8 - Missing
    rapidjson/1.1.0@includeos/stable:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    s2n/0.8@includeos/stable:f5f70b4db987bedcf8c4e21b75ef8495ab7d706a - Missing
    uzlib/v2.1.1@includeos/stable:bad7dd1e4b5daf2b9ae8e3ca2e4397d55b8d3583 - Missing
Build requirements
    chainloader/0.15.1-5@includeos/latest from 'includeos' - Cache
    vmbuild/0.15.0@includeos/latest from 'includeos' - Cache
    vmrunner/0.16.0@includeos/latest from 'includeos' - Cache
Build requirements packages
    chainloader/0.15.1-5@includeos/latest:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache
    vmbuild/0.15.0@includeos/latest:743cf0321be3152777da4d05247a66d1552e70a2 - Missing
    vmrunner/0.16.0@includeos/latest:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Cache

GSL/2.0.0@includeos/stable: Already installed!
chainloader/0.15.1-5@includeos/latest: Already installed!
http-parser/2.8.1@includeos/stable: WARN: Can't find a 'http-parser/2.8.1@includeos/stable' package for the specified settings, options and dependencies:
- Settings: arch=x86_64, build_type=Release, compiler=apple-clang, compiler.version=10.0, os=Macos
- Options: 
- Dependencies: 
- Package ID: bad7dd1e4b5daf2b9ae8e3ca2e4397d55b8d3583

ERROR: Missing prebuilt package for 'http-parser/2.8.1@includeos/stable'
Try to build it from sources with "--build http-parser"
Or read "http://docs.conan.io/en/latest/faq/troubleshooting.html#error-missing-prebuilt-package"

Any help would be greatly appreciated.

fwsGonzo commented 4 years ago

You will need to install clang-6.0, because that is the compiler that was used to build everything else so far. I think it should be installed from brew, even though I don't have a mac so I can't say for sure.