Skip to content

Conversation

strega-nil
Copy link
Contributor

cc @vladp, I don't have any ability to test this

@vladp
Copy link

vladp commented Aug 21, 2019

Thank you.
I tried the branch

I am getting a different error when compiling with pre-installed cmake
(cannot file copyfile.h)

And the same error (old cmake) when trying with vcpkg cmake (it seems that older cmake binary is being downloaded)

Attaching the logfiles with the 2 attempts.

The clang compiler used, as you can see, the CXX compiler is clang 6x
(it is standard on FreeBSD 12, I also tried with g++9 (this is optional that I have installed, but same error complaining that it cannot find copyfile.h))

I am guessing that copyfile.h is a Mac thing, and is not available on other platforms..

testlog.w.fbsd12-cmake.txt
testlog.w.vcpkg-cmake.txt

@cbezault
Copy link
Contributor

cbezault commented Aug 21, 2019

Copyfile.h is macOS specific and sendfile has different semantics on FreeBSD than Linux. We'll have to figure out how FreeBSD does cross-link file copying.

@strega-nil
Copy link
Contributor Author

@vladp alright, I just did the "dumb" thing that should work on all unices -- can you try it now?

Also, I downgraded the needed cmake to 3.12, since we don't use any features from 3.13 or 3.14 in our CMakeLists.txt

@strega-nil strega-nil changed the title [vcpkg] maybe fix the build on FreeBSD? [vcpkg] maybe fix the build on FreeBSD? 😈 Aug 21, 2019
@strega-nil
Copy link
Contributor Author

strega-nil commented Aug 22, 2019

Tested with vagrant, and it does work!

bitmoji

@strega-nil strega-nil self-assigned this Aug 22, 2019
@strega-nil strega-nil requested a review from cbezault August 22, 2019 04:37
@vladp
Copy link

vladp commented Aug 22, 2019

@ubsan
With the optionally installed g++9
export CXX=/usr/local/bin/g++9 && cd vcpkg && ./bootstrap-vcpkg.sh -useSystemBinaries
It worked.
It compiled vcpkg, the binary was generated (with debug info for some reason)

$ file ./vcpkg
./vcpkg: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for FreeBSD 12.0 (1200086), FreeBSD-style, with debug_info, not stripped

$ ./vcpkg env
Error: invalid triplet: x64-freebsd
Available architecture triplets:
arm-uwp
arm-windows
arm64-uwp
arm64-windows
x64-linux
x64-osx
x64-uwp
x64-windows
x64-windows-static
x86-uwp
x86-windows
x86-windows-static

Should x64-freebsd be a valid target?


With default clang 6.0.1 , compilation now finished successfully.
export CXX=/usr/local/bin/clang++ && cd vcpkg && ./bootstrap-vcpkg.sh -useSystemBinaries

I have received linking error

/usr/bin/ld: error: unable to find library -lc++fs
c++: error: linker command failed with exit code 1 (use -v to see invocation)

However, this is may be something on my side, and I should read vcpkg installation docs, to see if I am missing a per-requsite lib for clang.


Without using -useSystemBinaries flag.
I am stilling getting shared lib error (my host is freebsd 12, even though the host name has 11 in its name )

[v@fbsd11_a_hv1 ~/devel/other]$ export CXX=/usr/bin/clang++
[v@fbsd11_a_hv1 ~/devel/other]$ cd vcpkg/
[v@fbsd11_a_hv1 ~/devel/other/vcpkg]$ ./bootstrap-vcpkg.sh
Downloading cmake...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   625    0   625    0     0   3109      0 --:--:-- --:--:-- --:--:--  3125
100 23.3M  100 23.3M    0     0  3226k      0  0:00:07  0:00:07 --:--:-- 4520k
Downloading cmake... done.
Extracting cmake...
Extracting cmake... done.
Downloading ninja...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   608    0   608    0     0   1558      0 --:--:-- --:--:-- --:--:--  1558
100 82097  100 82097    0     0  33536      0  0:00:02  0:00:02 --:--:-- 73366
Downloading ninja... done.
Extracting ninja...
Extracting ninja... done.
[: FreeBSD clang version 6: bad number
ld-elf.so.1: Shared object "libssl.so.8" not found, required by "cmake"
[v@fbsd11_a_hv1 ~/devel/other/vcpkg]$

When checking the vcpkg-downloaded cmake, I see that it was compiled for Freebsd 11.2, not the current 12

$ file ./downloads/tools/cmake-3.12.4-freebsd/cmake-3.12.4-FreeBSD-x86_64/bin/cmake
./downloads/tools/cmake-3.12.4-freebsd/cmake-3.12.4-FreeBSD-x86_64/bin/cmake: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for FreeBSD 11.2, FreeBSD-style, stripped

Which explains the shared libs not found errors


$ ldd ./downloads/tools/cmake-3.12.4-freebsd/cmake-3.12.4-FreeBSD-x86_64/bin/cmake
./downloads/tools/cmake-3.12.4-freebsd/cmake-3.12.4-FreeBSD-x86_64/bin/cmake:
        libexecinfo.so.1 => /usr/lib/libexecinfo.so.1 (0x8016b2000)
        libssl.so.8 => not found (0)
        libcrypto.so.8 => not found (0)
        libkvm.so.7 => /lib/libkvm.so.7 (0x8016b7000)
        libthr.so.3 => /lib/libthr.so.3 (0x8016ca000)
        libc++.so.1 => /usr/lib/libc++.so.1 (0x8016f5000)
        libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x8017c4000)
        libm.so.5 => /lib/libm.so.5 (0x8017e5000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x801817000)
        libc.so.7 => /lib/libc.so.7 (0x80182f000)
        libelf.so.2 => /lib/libelf.so.2 (0x801c22000)

The cmake that comes with freebsd 12 packages is actually 3.14.5 and it works

$ ldd /usr/local/bin/cmake
/usr/local/bin/cmake:
        libexecinfo.so.1 => /usr/lib/libexecinfo.so.1 (0x800734000)
        libexpat.so.1 => /usr/local/lib/libexpat.so.1 (0x800739000)
        libz.so.6 => /lib/libz.so.6 (0x800765000)
        libarchive.so.13 => /usr/local/lib/libarchive.so.13 (0x80077f000)
        libcurl.so.4 => /usr/local/lib/libcurl.so.4 (0x800844000)
        libjsoncpp.so.1 => /usr/local/lib/libjsoncpp.so.1 (0x8008ca000)
        libuv.so.1 => /usr/local/lib/libuv.so.1 (0x80090b000)
        librhash.so.0 => /usr/local/lib/librhash.so.0 (0x800937000)
        libthr.so.3 => /lib/libthr.so.3 (0x80095f000)
        libc++.so.1 => /usr/lib/libc++.so.1 (0x80098a000)
        libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x800a59000)
        libm.so.5 => /lib/libm.so.5 (0x800a7a000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x800aac000)
        libc.so.7 => /lib/libc.so.7 (0x800ac4000)
        libelf.so.2 => /lib/libelf.so.2 (0x800eb7000)
        libcrypto.so.111 => /lib/libcrypto.so.111 (0x800ed1000)
        liblzo2.so.2 => /usr/local/lib/liblzo2.so.2 (0x8011be000)
        liblzma.so.5 => /usr/lib/liblzma.so.5 (0x8011f0000)
        liblz4.so.1 => /usr/local/lib/liblz4.so.1 (0x80121b000)
        libbz2.so.4 => /usr/lib/libbz2.so.4 (0x80124c000)
        libnghttp2.so.14 => /usr/local/lib/libnghttp2.so.14 (0x801261000)
        libssl.so.111 => /usr/lib/libssl.so.111 (0x80128c000)
        libheimntlm.so.11 => /usr/lib/libheimntlm.so.11 (0x801321000)
        libhx509.so.11 => /usr/lib/libhx509.so.11 (0x80132a000)
        libcom_err.so.5 => /usr/lib/libcom_err.so.5 (0x80137b000)
        libasn1.so.11 => /usr/lib/libasn1.so.11 (0x801380000)
        libwind.so.11 => /usr/lib/libwind.so.11 (0x801424000)
        libheimbase.so.11 => /usr/lib/libheimbase.so.11 (0x80144e000)
        libroken.so.11 => /usr/lib/libroken.so.11 (0x801455000)
        libcrypt.so.5 => /lib/libcrypt.so.5 (0x80146a000)
        libkrb5.so.11 => /usr/lib/libkrb5.so.11 (0x80148c000)
        libgssapi.so.10 => /usr/lib/libgssapi.so.10 (0x80150d000)
        libgssapi_krb5.so.10 => /usr/lib/libgssapi_krb5.so.10 (0x80151a000)
        librt.so.1 => /usr/lib/librt.so.1 (0x80153c000)
        libdl.so.1 => /usr/lib/libdl.so.1 (0x801544000)
        libprivateheimipcc.so.11 => /usr/lib/libprivateheimipcc.so.11 (0x801548000)
[v@fbsd11_a_hv1 ~/devel/other/vcpkg]$

So it is not just the problem with older version of cmake, instead,  is that the binary cmake that vcpkg is downloading was for Freebsd 11, not 12.
I am not sure if you wanted to support the older Freebsd version or not.. but that that's the reason, I think, why I have to use -withSystemBinary.

thank you again for your follow ups!

@degski
Copy link

degski commented Aug 22, 2019

@vladp

usr/bin/ld: error: unable to find library -lc++fs

I think you should not have [to link] that lib, there was a period over which the functionality of <filesystem> was implemented in a separate library, next to libc++, as it was 'sort of' experimental. This is probably not applicable to clang-6 [does it support filesystem?] and possibly no longer necessary for the imminent clang-9.

@vladp
Copy link

vladp commented Aug 22, 2019

@degski in Clang-6 on FBSD 12, as you were suggesting header exists but it is under experimental


[v@fbsd11_a_hv1 /usr/include/c++/v1]$ find . -name "*file*"
./experimental/filesystem
[v@fbsd11_a_hv1 /usr/include/c++/v1]$

I am guessing the fs stuff is hidden within there:
(and it is probably much better if vcpkg does not rely on that...)

[v@fbsd11_a_hv1 /usr/lib]$ ls *experim*
libc++experimental.a
[v@fbsd11_a_hv1 /usr/lib]$ nm ./libc++experimental.a

memory_resource.o:
0000000000000050 t _GLOBAL__I_000101
0000000000000060 t _GLOBAL__sub_I_memory_resource.cpp
0000000000000000 W _ZNKSt12experimental15fundamentals_v13pmr26__null_memory_resource_imp11do_is_equalERKNS1_15memory_resourceE
0000000000000000 W _ZNKSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_imp11do_is_equalERKNS1_15memory_resourceE
0000000000000000 d _ZNSt12experimental15fundamentals_v13pmr12_GLOBAL__N_18res_initE
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr15memory_resourceD2Ev
0000000000000000 T _ZNSt12experimental15fundamentals_v13pmr19new_delete_resourceEv
0000000000000020 T _ZNSt12experimental15fundamentals_v13pmr20get_default_resourceEv
0000000000000010 T _ZNSt12experimental15fundamentals_v13pmr20null_memory_resourceEv
0000000000000030 T _ZNSt12experimental15fundamentals_v13pmr20set_default_resourceEPNS1_15memory_resourceE
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr26__null_memory_resource_imp11do_allocateEmm
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr26__null_memory_resource_imp13do_deallocateEPvmm
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr26__null_memory_resource_impD0Ev
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_imp11do_allocateEmm
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_imp13do_deallocateEPvmm
0000000000000000 W _ZNSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_impD0Ev
                 U _ZSt17__throw_bad_allocv
0000000000000000 V _ZTINSt12experimental15fundamentals_v13pmr15memory_resourceE
0000000000000000 V _ZTINSt12experimental15fundamentals_v13pmr26__null_memory_resource_impE
0000000000000000 V _ZTINSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_impE
0000000000000000 V _ZTSNSt12experimental15fundamentals_v13pmr15memory_resourceE
0000000000000000 V _ZTSNSt12experimental15fundamentals_v13pmr26__null_memory_resource_impE
0000000000000000 V _ZTSNSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_impE
                 U _ZTVN10__cxxabiv117__class_type_infoE
                 U _ZTVN10__cxxabiv120__si_class_type_infoE
0000000000000000 V _ZTVNSt12experimental15fundamentals_v13pmr26__null_memory_resource_impE
0000000000000000 V _ZTVNSt12experimental15fundamentals_v13pmr32__new_delete_memory_resource_impE
0000000000000010 d _ZZNSt12experimental15fundamentals_v13pmrL25__default_memory_resourceEbPNS1_15memory_resourceEE5__res
                 U _ZdlPv
                 U _Znwm

operations.o:
0000000000000000 r .L.str
000000000000000a r .L.str.1
0000000000000085 r .L.str.10
000000000000008f r .L.str.11
000000000000009f r .L.str.12
00000000000000a8 r .L.str.13
00000000000000b8 r .L.str.14
00000000000000c4 r .L.str.15
00000000000000d1 r .L.str.16
00000000000000d8 r .L.str.17
00000000000000e3 r .L.str.18
00000000000000ea r .L.str.19
000000000000000f r .L.str.2
00000000000000f6 r .L.str.20
00000000000000fc r .L.str.21
0000000000000114 r .L.str.25
0000000000000119 r .L.str.26
000000000000012d r .L.str.27
0000000000000138 r .L.str.28
0000000000000019 r .L.str.3
0000000000000158 r .L.str.36
000000000000015b r .L.str.38
000000000000002c r .L.str.4
000000000000015e r .L.str.42
000000000000003d r .L.str.5
0000000000000056 r .L.str.6
0000000000000067 r .L.str.7
0000000000000076 r .L.str.8
0000000000000078 r .L.str.9
0000000000000010 r .LCPI5_0
0000000000000000 V DW.ref.__gxx_personality_v0
00000000000004c0 r GCC_except_table10
00000000000004ec r GCC_except_table11
0000000000000528 r GCC_except_table12
00000000000005b4 r GCC_except_table13
00000000000005e0 r GCC_except_table14
000000000000068c r GCC_except_table15
00000000000006b8 r GCC_except_table17
0000000000000700 r GCC_except_table18
000000000000072c r GCC_except_table19
0000000000000000 r GCC_except_table2
000000000000078c r GCC_except_table20
00000000000007b8 r GCC_except_table21
00000000000007e4 r GCC_except_table22
0000000000000838 r GCC_except_table23
0000000000000864 r GCC_except_table24
00000000000008ac r GCC_except_table25
00000000000008cc r GCC_except_table26
00000000000008f8 r GCC_except_table27
0000000000000958 r GCC_except_table29
000000000000003c r GCC_except_table3
0000000000000984 r GCC_except_table30
00000000000009a4 r GCC_except_table33
00000000000009d0 r GCC_except_table34
0000000000000a1c r GCC_except_table36
0000000000000a3c r GCC_except_table37
0000000000000218 r GCC_except_table4
0000000000000a78 r GCC_except_table46
0000000000000ad4 r GCC_except_table47
00000000000003a8 r GCC_except_table5
0000000000000408 r GCC_except_table6
0000000000000b08 r GCC_except_table63
0000000000000434 r GCC_except_table9
                 U _Unwind_Resume
                 U _ZNKSt12experimental10filesystem2v118directory_iterator13__dereferenceEv
                 U _ZNKSt12experimental10filesystem2v14path10__filenameEv
                 U _ZNKSt12experimental10filesystem2v14path11__root_nameEv
                 U _ZNKSt12experimental10filesystem2v14path13__parent_pathEv
                 U _ZNKSt12experimental10filesystem2v14path15__relative_pathEv
                 U _ZNKSt12experimental10filesystem2v14path16__root_directoryEv
                 U _ZNKSt13runtime_error4whatEv
                 U _ZNKSt3__119__shared_weak_count13__get_deleterERKSt9type_info
                 U _ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv
                 U _ZNKSt3__16locale9has_facetERNS0_2idE
                 U _ZNKSt3__16locale9use_facetERNS0_2idE
00000000000000b0 T _ZNSt12experimental10filesystem2v111__canonicalERKNS1_4pathES4_PNSt3__110error_codeE
0000000000001aa0 T _ZNSt12experimental10filesystem2v111__copy_fileERKNS1_4pathES4_NS1_12copy_optionsEPNSt3__110error_codeE
00000000000035c0 T _ZNSt12experimental10filesystem2v111__file_sizeERKNS1_4pathEPNSt3__110error_codeE
0000000000004110 t _ZNSt12experimental10filesystem2v112_GLOBAL__N_115remove_all_implERKNS1_4pathERNSt3__110error_codeE
00000000000031f0 T _ZNSt12experimental10filesystem2v112__equivalentERKNS1_4pathES4_PNSt3__110error_codeE
0000000000004030 T _ZNSt12experimental10filesystem2v112__remove_allERKNS1_4pathEPNSt3__110error_codeE
00000000000038c0 T _ZNSt12experimental10filesystem2v113__fs_is_emptyERKNS1_4pathEPNSt3__110error_codeE
0000000000003cf0 T _ZNSt12experimental10filesystem2v113__permissionsERKNS1_4pathENS1_5permsEPNSt3__110error_codeE
0000000000004400 T _ZNSt12experimental10filesystem2v113__resize_fileERKNS1_4pathEmPNSt3__110error_codeE
00000000000018b0 T _ZNSt12experimental10filesystem2v114__copy_symlinkERKNS1_4pathES4_PNSt3__110error_codeE
0000000000002f80 T _ZNSt12experimental10filesystem2v114__current_pathEPNSt3__110error_codeE
0000000000003110 T _ZNSt12experimental10filesystem2v114__current_pathERKNS1_4pathEPNSt3__110error_codeE
0000000000002790 T _ZNSt12experimental10filesystem2v114__read_symlinkERKNS1_4pathEPNSt3__110error_codeE
0000000000001940 T _ZNSt12experimental10filesystem2v116__create_symlinkERKNS1_4pathES4_PNSt3__110error_codeE
0000000000004760 T _ZNSt12experimental10filesystem2v116__symlink_statusERKNS1_4pathEPNSt3__110error_codeE
0000000000000050 T _ZNSt12experimental10filesystem2v116filesystem_errorD0Ev
0000000000000000 T _ZNSt12experimental10filesystem2v116filesystem_errorD1Ev
0000000000000000 T _ZNSt12experimental10filesystem2v116filesystem_errorD2Ev
0000000000003750 T _ZNSt12experimental10filesystem2v117__hard_link_countERKNS1_4pathEPNSt3__110error_codeE
0000000000003b80 T _ZNSt12experimental10filesystem2v117__last_write_timeERKNS1_4pathENSt3__16chrono10time_pointINS6_12system_clockENS6_8durationIxNS5_5ratioILl1ELl1000000EEEEEEEPNS5_10error_codeE
0000000000001fe0 T _ZNSt12experimental10filesystem2v117__last_write_timeERKNS1_4pathEPNSt3__110error_codeE
0000000000004820 T _ZNSt12experimental10filesystem2v117__system_completeERKNS1_4pathEPNSt3__110error_codeE
0000000000002d40 T _ZNSt12experimental10filesystem2v118__create_directoryERKNS1_4pathEPNSt3__110error_codeE
0000000000001de0 T _ZNSt12experimental10filesystem2v118__create_directoryERKNS1_4pathES4_PNSt3__110error_codeE
00000000000019f0 T _ZNSt12experimental10filesystem2v118__create_hard_linkERKNS1_4pathES4_PNSt3__110error_codeE
                 U _ZNSt12experimental10filesystem2v118directory_iterator11__incrementEPNSt3__110error_codeE
                 U _ZNSt12experimental10filesystem2v118directory_iteratorC2ERKNS1_4pathEPNSt3__110error_codeENS1_17directory_optionsE
0000000000002900 T _ZNSt12experimental10filesystem2v120__create_directoriesERKNS1_4pathEPNSt3__110error_codeE
00000000000048c0 T _ZNSt12experimental10filesystem2v121__temp_directory_pathEPNSt3__110error_codeE
0000000000002ed0 T _ZNSt12experimental10filesystem2v126__create_directory_symlinkERKNS1_4pathES4_PNSt3__110error_codeE
0000000000000000 W _ZNSt12experimental10filesystem2v14pathdVERKS2_
0000000000000bd0 T _ZNSt12experimental10filesystem2v16__copyERKNS1_4pathES4_NS1_12copy_optionsEPNSt3__110error_codeE
0000000000001790 t _ZNSt12experimental10filesystem2v16detail12_GLOBAL__N_112set_or_throwERKNSt3__110error_codeEPS5_PKcRKNS1_4pathESD_
0000000000002260 t _ZNSt12experimental10filesystem2v16detail12_GLOBAL__N_114copy_file_implERKNS1_4pathES6_NS1_5permsEPNSt3__110error_codeE
0000000000004c90 t _ZNSt12experimental10filesystem2v16detail12_GLOBAL__N_118create_file_statusERNSt3__110error_codeERKNS1_4pathER4statPS5_
00000000000044e0 T _ZNSt12experimental10filesystem2v17__spaceERKNS1_4pathEPNSt3__110error_codeE
0000000000003f50 T _ZNSt12experimental10filesystem2v18__removeERKNS1_4pathEPNSt3__110error_codeE
0000000000004350 T _ZNSt12experimental10filesystem2v18__renameERKNS1_4pathES4_PNSt3__110error_codeE
00000000000046a0 T _ZNSt12experimental10filesystem2v18__statusERKNS1_4pathEPNSt3__110error_codeE
0000000000000220 T _ZNSt12experimental10filesystem2v18absoluteERKNS1_4pathES4_
0000000000000000 W _ZNSt3__110shared_ptrINS_4pairINSt12experimental10filesystem2v14pathES5_EEE11make_sharedIJRKS5_SA_EEES7_DpOT_
0000000000000000 W _ZNSt3__110shared_ptrINS_4pairINSt12experimental10filesystem2v14pathES5_EEE18__enable_weak_thisEz
0000000000000000 W _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE23__append_forward_unsafeIPKcEERS5_T_SA_
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_
                 U _ZNSt3__112system_errorC2ENS_10error_codeERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE
                 U _ZNSt3__112system_errorD2Ev
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4syncEv
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5imbueERKNS_6localeE
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE6setbufEPcl
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekoffExNS_8ios_base7seekdirEj
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekposENS_4fposI11__mbstate_tEEj
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE8overflowEi
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9pbackfailEi
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9underflowEv
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2Ev
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED0Ev
0000000000000000 W _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED2Ev
                 U _ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev
                 U _ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev
                 U _ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED2Ev
                 U _ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev
                 U _ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev
                 U _ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED2Ev
0000000000000000 W _ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEED0Ev
0000000000000000 W _ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEED1Ev
0000000000000000 W _ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEED0Ev
0000000000000000 W _ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEED1Ev
                 U _ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE5uflowEv
                 U _ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6xsgetnEPcl
                 U _ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6xsputnEPKcl
                 U _ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9showmanycEv
                 U _ZNSt3__115basic_streambufIcNS_11char_traitsIcEEEC2Ev
                 U _ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev
                 U _ZNSt3__115system_categoryEv
                 U _ZNSt3__116generic_categoryEv
                 U _ZNSt3__119__shared_weak_count14__release_weakEv
                 U _ZNSt3__119__shared_weak_countD2Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEE16__on_zero_sharedEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEE21__on_zero_shared_weakEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEED0Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEED2Ev
                 U _ZNSt3__16localeC1ERKS0_
                 U _ZNSt3__16localeD1Ev
                 U _ZNSt3__17codecvtIcc11__mbstate_tE2idE
                 U _ZNSt3__18ios_base4initEPv
                 U _ZNSt3__18ios_base5clearEj
                 U _ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev
                 U _ZNSt8bad_castC1Ev
                 U _ZNSt8bad_castD1Ev
                 U _ZSt9terminatev
0000000000000000 V _ZTCNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE0_NS_13basic_istreamIcS2_EE
0000000000000000 V _ZTCNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE0_NS_13basic_ostreamIcS2_EE
0000000000000050 D _ZTINSt12experimental10filesystem2v116filesystem_errorE
                 U _ZTINSt3__112system_errorE
0000000000000000 V _ZTINSt3__113basic_filebufIcNS_11char_traitsIcEEEE
                 U _ZTINSt3__113basic_istreamIcNS_11char_traitsIcEEEE
                 U _ZTINSt3__113basic_ostreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTINSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTINSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
                 U _ZTINSt3__115basic_streambufIcNS_11char_traitsIcEEEE
                 U _ZTINSt3__119__shared_weak_countE
0000000000000000 V _ZTINSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEEE
                 U _ZTISt8bad_cast
0000000000000000 R _ZTSNSt12experimental10filesystem2v116filesystem_errorE
0000000000000000 V _ZTSNSt3__113basic_filebufIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTSNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTSNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTSNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEEE
0000000000000000 V _ZTTNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTTNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
                 U _ZTVN10__cxxabiv120__si_class_type_infoE
0000000000000000 D _ZTVNSt12experimental10filesystem2v116filesystem_errorE
0000000000000000 V _ZTVNSt3__113basic_filebufIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTVNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTVNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
0000000000000000 V _ZTVNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEEE
                 U _ZTv0_n24_NSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev
                 U _ZTv0_n24_NSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev
                 U _ZTv0_n24_NSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev
                 U _ZTv0_n24_NSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev
0000000000000000 W _ZTv0_n24_NSt3__114basic_ifstreamIcNS_11char_traitsIcEEED0Ev
0000000000000000 W _ZTv0_n24_NSt3__114basic_ifstreamIcNS_11char_traitsIcEEED1Ev
0000000000000000 W _ZTv0_n24_NSt3__114basic_ofstreamIcNS_11char_traitsIcEEED0Ev
0000000000000000 W _ZTv0_n24_NSt3__114basic_ofstreamIcNS_11char_traitsIcEEED1Ev
                 U _ZdaPv
                 U _ZdlPv
                 U _Znam
                 U _Znwm
0000000000000000 W __clang_call_terminate
                 U __cxa_allocate_exception
                 U __cxa_begin_catch
                 U __cxa_end_catch
                 U __cxa_free_exception
                 U __cxa_throw
                 U __error
                 U __gxx_personality_v0
                 U __stack_chk_fail
                 U __stack_chk_guard
                 U chdir
                 U fchmodat
                 U fclose
                 U fflush
                 U fopen
                 U fread
                 U fseeko
                 U ftello
                 U fwrite
                 U getcwd
                 U getenv
                 U link
                 U lstat
                 U memcpy
                 U memmove
                 U memset
                 U mkdir
                 U pathconf
                 U readlink
                 U realpath
                 U remove
                 U rename
                 U stat
                 U statvfs
                 U symlink
                 U truncate
                 U utimensat

path.o:
0000000000000000 r .L.str
0000000000000002 r .L.str.2
0000000000000003 r .L.str.3
0000000000000005 r .L.str.4
0000000000000008 r .L.str.5
0000000000000000 V DW.ref.__gxx_personality_v0
0000000000000000 r GCC_except_table0
0000000000000058 r GCC_except_table12
0000000000000080 r GCC_except_table13
00000000000000cc r GCC_except_table15
0000000000000118 r GCC_except_table16
000000000000002c r GCC_except_table9
                 U _Unwind_Resume
0000000000001520 t _ZN12_GLOBAL__N_16parser10PathParser9incrementEv
0000000000000560 t _ZN12_GLOBAL__N_16parser10PathParsermmEv
0000000000000ac0 t _ZN12_GLOBAL__N_16parser17separate_filenameERKNSt3__117basic_string_viewIcNS1_11char_traitsIcEEEE
0000000000000900 T _ZNKSt12experimental10filesystem2v14path10__filenameEv
0000000000000be0 T _ZNKSt12experimental10filesystem2v14path11__extensionEv
00000000000001b0 T _ZNKSt12experimental10filesystem2v14path11__root_nameEv
0000000000000480 T _ZNKSt12experimental10filesystem2v14path13__parent_pathEv
00000000000003a0 T _ZNKSt12experimental10filesystem2v14path15__relative_pathEv
00000000000002c0 T _ZNKSt12experimental10filesystem2v14path15__root_path_rawEv
0000000000000230 T _ZNKSt12experimental10filesystem2v14path16__root_directoryEv
0000000000001180 T _ZNKSt12experimental10filesystem2v14path3endEv
0000000000000fb0 T _ZNKSt12experimental10filesystem2v14path5beginEv
00000000000009d0 T _ZNKSt12experimental10filesystem2v14path6__stemEv
0000000000000cd0 T _ZNKSt12experimental10filesystem2v14path9__compareENSt3__117basic_string_viewIcNS3_11char_traitsIcEEEE
                 U _ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv
                 U _ZNSt11logic_errorC2EPKc
0000000000000e90 T _ZNSt12experimental10filesystem2v110hash_valueERKNS1_4pathE
0000000000000000 T _ZNSt12experimental10filesystem2v14path17replace_extensionERKS2_
0000000000000080 R _ZNSt12experimental10filesystem2v14path19preferred_separatorE
0000000000001360 T _ZNSt12experimental10filesystem2v14path8iterator11__decrementEv
00000000000011a0 T _ZNSt12experimental10filesystem2v14path8iterator11__incrementEv
                 U _ZNSt12out_of_rangeD1Ev
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5eraseEmm
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm
0000000000000000 W _ZNSt3__121__murmur2_or_cityhashImLm64EE18__hash_len_0_to_16EPKcm
0000000000000000 W _ZNSt3__121__murmur2_or_cityhashImLm64EEclEPKvm
                 U _ZSt9terminatev
                 U _ZTISt12out_of_range
                 U _ZTVSt12out_of_range
                 U _ZdlPv
                 U _Znwm
0000000000000000 W __clang_call_terminate
                 U __cxa_allocate_exception
                 U __cxa_begin_catch
                 U __cxa_free_exception
                 U __cxa_throw
                 U __gxx_personality_v0
                 U __stack_chk_fail
                 U __stack_chk_guard
                 U memcmp
                 U memcpy

directory_iterator.o:
0000000000000000 r .L.str
000000000000002c r .L.str.1
000000000000004d r .L.str.2
000000000000006a r .L.str.3
0000000000000095 r .L.str.4
0000000000000097 r .L.str.5
000000000000009a r .L.str.6
0000000000000000 V DW.ref.__gxx_personality_v0
0000000000000000 r GCC_except_table0
0000000000000048 r GCC_except_table1
0000000000000240 r GCC_except_table10
000000000000026c r GCC_except_table15
00000000000002b8 r GCC_except_table18
00000000000000b8 r GCC_except_table3
00000000000002e4 r GCC_except_table35
000000000000037c r GCC_except_table36
00000000000003a8 r GCC_except_table37
00000000000003d4 r GCC_except_table38
0000000000000400 r GCC_except_table39
0000000000000138 r GCC_except_table4
0000000000000198 r GCC_except_table6
00000000000001ec r GCC_except_table7
0000000000000228 r GCC_except_table8
                 U _Unwind_Resume
00000000000006e0 T _ZNKSt12experimental10filesystem2v118directory_iterator13__dereferenceEv
0000000000000c90 T _ZNKSt12experimental10filesystem2v128recursive_directory_iterator13__dereferenceEv
0000000000000c80 T _ZNKSt12experimental10filesystem2v128recursive_directory_iterator5depthEv
0000000000000c70 T _ZNKSt12experimental10filesystem2v128recursive_directory_iterator7optionsEv
                 U _ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEmmPKcm
                 U _ZNKSt3__119__shared_weak_count13__get_deleterERKSt9type_info
                 U _ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv
                 U _ZNSt11logic_errorC2EPKc
00000000000004e0 t _ZNSt12experimental10filesystem2v112_GLOBAL__N_16detail12set_or_throwIJEEEbRNSt3__110error_codeEPS6_PKcDpOT_
0000000000000200 t _ZNSt12experimental10filesystem2v112_GLOBAL__N_16detail12set_or_throwIJRKNS1_4pathEEEEbRNSt3__110error_codeEPS9_PKcDpOT_
0000000000000000 W _ZNSt12experimental10filesystem2v112__dir_stream7advanceERNSt3__110error_codeE
0000000000000000 W _ZNSt12experimental10filesystem2v112__dir_streamC2ERKNS1_4pathENS1_17directory_optionsERNSt3__110error_codeE
0000000000000000 W _ZNSt12experimental10filesystem2v112__dir_streamD2Ev
                 U _ZNSt12experimental10filesystem2v116__symlink_statusERKNS1_4pathEPNSt3__110error_codeE
                 U _ZNSt12experimental10filesystem2v116filesystem_errorD1Ev
0000000000000410 T _ZNSt12experimental10filesystem2v118directory_iterator11__incrementEPNSt3__110error_codeE
0000000000000000 T _ZNSt12experimental10filesystem2v118directory_iteratorC1ERKNS1_4pathEPNSt3__110error_codeENS1_17directory_optionsE
0000000000000000 T _ZNSt12experimental10filesystem2v118directory_iteratorC2ERKNS1_4pathEPNSt3__110error_codeENS1_17directory_optionsE
0000000000000ce0 T _ZNSt12experimental10filesystem2v128recursive_directory_iterator11__incrementEPNSt3__110error_codeE
0000000000000d40 T _ZNSt12experimental10filesystem2v128recursive_directory_iterator15__try_recursionEPNSt3__110error_codeE
0000000000000990 T _ZNSt12experimental10filesystem2v128recursive_directory_iterator5__popEPNSt3__110error_codeE
0000000000000ab0 T _ZNSt12experimental10filesystem2v128recursive_directory_iterator9__advanceEPNSt3__110error_codeE
00000000000006f0 T _ZNSt12experimental10filesystem2v128recursive_directory_iteratorC1ERKNS1_4pathENS1_17directory_optionsEPNSt3__110error_codeE
00000000000006f0 T _ZNSt12experimental10filesystem2v128recursive_directory_iteratorC2ERKNS1_4pathENS1_17directory_optionsEPNSt3__110error_codeE
0000000000000000 W _ZNSt12experimental10filesystem2v14pathdVERKS2_
                 U _ZNSt12experimental10filesystem2v18__statusERKNS1_4pathEPNSt3__110error_codeE
                 U _ZNSt12length_errorD1Ev
0000000000000000 W _ZNSt3__110shared_ptrINS_4pairINSt12experimental10filesystem2v14pathES5_EEE18__enable_weak_thisEz
0000000000000000 W _ZNSt3__110shared_ptrINSt12experimental10filesystem2v112__dir_streamEE18__enable_weak_thisEz
0000000000000000 W _ZNSt3__110shared_ptrINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impEE18__enable_weak_thisEz
0000000000000000 W _ZNSt3__112__deque_baseINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEE5clearEv
0000000000000000 W _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE23__append_forward_unsafeIPKcEERS5_T_SA_
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcm
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_
                 U _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_
                 U _ZNSt3__112system_errorC2ENS_10error_codeERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE
                 U _ZNSt3__112system_errorD2Ev
0000000000000000 W _ZNSt3__114__split_bufferIPNSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS5_EEE10push_frontEOS5_
0000000000000000 W _ZNSt3__114__split_bufferIPNSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS5_EEE9push_backEOS5_
0000000000000000 W _ZNSt3__114__split_bufferIPNSt12experimental10filesystem2v112__dir_streamERNS_9allocatorIS5_EEE10push_frontERKS5_
0000000000000000 W _ZNSt3__114__split_bufferIPNSt12experimental10filesystem2v112__dir_streamERNS_9allocatorIS5_EEE9push_backEOS5_
                 U _ZNSt3__115system_categoryEv
                 U _ZNSt3__116generic_categoryEv
                 U _ZNSt3__119__shared_weak_count14__release_weakEv
                 U _ZNSt3__119__shared_weak_countD2Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEE16__on_zero_sharedEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEE21__on_zero_shared_weakEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEED0Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEED2Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEE16__on_zero_sharedEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEE21__on_zero_shared_weakEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEED0Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEED2Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEE16__on_zero_sharedEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEE21__on_zero_shared_weakEv
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEED0Ev
0000000000000000 W _ZNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEED2Ev
0000000000000000 W _ZNSt3__15dequeINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEE19__add_back_capacityEv
                 U _ZSt9terminatev
                 U _ZTINSt12experimental10filesystem2v116filesystem_errorE
                 U _ZTINSt3__119__shared_weak_countE
0000000000000000 V _ZTINSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEEE
0000000000000000 V _ZTINSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEEE
0000000000000000 V _ZTINSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEEE
                 U _ZTISt12length_error
0000000000000000 V _ZTSNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEEE
0000000000000000 V _ZTSNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEEE
0000000000000000 V _ZTSNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEEE
                 U _ZTVN10__cxxabiv120__si_class_type_infoE
                 U _ZTVNSt12experimental10filesystem2v116filesystem_errorE
0000000000000000 V _ZTVNSt3__120__shared_ptr_emplaceINS_4pairINSt12experimental10filesystem2v14pathES5_EENS_9allocatorIS6_EEEE
0000000000000000 V _ZTVNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v112__dir_streamENS_9allocatorIS4_EEEE
0000000000000000 V _ZTVNSt3__120__shared_ptr_emplaceINSt12experimental10filesystem2v128recursive_directory_iterator12__shared_impENS_9allocatorIS5_EEEE
                 U _ZTVSt12length_error
                 U _ZdlPv
                 U _Znwm
0000000000000000 W __clang_call_terminate
                 U __cxa_allocate_exception
                 U __cxa_begin_catch
                 U __cxa_free_exception
                 U __cxa_throw
                 U __error
                 U __gxx_personality_v0
                 U __stack_chk_fail
                 U __stack_chk_guard
                 U closedir
                 U memcpy
                 U memmove
                 U opendir
                 U readdir
                 U strlen
[v@fbsd11_a_hv1 /usr/lib]$

@strega-nil
Copy link
Contributor Author

strega-nil commented Aug 22, 2019

@vladp I think it's likely that we should say "If you're on FreeBSD, install gcc and CMake yourself and -useSystemBinaries". We aren't likely to put in the necessary work to get using our downloaded binaries working, at least on FreeBSD 12. Is that fair?

I don't have any insight on whether x64-freebsd should work or not.

@cbezault
Copy link
Contributor

x64-freebsd is not a supported triplet. You would have to write your own custom triplet.

@strega-nil strega-nil changed the title [vcpkg] maybe fix the build on FreeBSD? 😈 [vcpkg] Fix the build on FreeBSD 😈 Aug 22, 2019
Add a `#else` line to `toolsrc/src/vcpkg/base/files.cpp`. On Linux
and macOS, there are specific ways to copy from file descriptor to file
descriptor, but on FreeBSD there isn't (as far as I could tell). This
change does a copy using the POSIX standard `read` and `write` calls.
(This change was to `RealFilesystem::rename_or_copy`).

We expect to have people on FreeBSD install CMake themselves, and use
`./bootstrap.sh -useSystemBinaries`, in order to build vcpkg.
Since CMake 3.15.2 exists in the FreeBSD 12 (latest stable) package
manager, it's trivial to install it.
@vladp
Copy link

vladp commented Aug 22, 2019

thank you @ubsan @cbezault .

Having -useSystemBinaries flag as a requirement for FreeBSD is a very reasonable (cmake and ninja are well supported freebsd packages).

Having g++9 as a requirement is also reasonable, as it is available in binary packages, so people can easily install it, just like on Linux.

I will need to learn how to write the new custom triplet for freebsd.

thank you again for getting this to compile on fbsd

@strega-nil strega-nil merged commit cc35672 into microsoft:master Aug 23, 2019
@strega-nil strega-nil deleted the freebsd branch August 26, 2019 20:19
strega-nil added a commit to strega-nil/vcpkg that referenced this pull request May 5, 2021
Add a `#else` line to `toolsrc/src/vcpkg/base/files.cpp`. On Linux
and macOS, there are specific ways to copy from file descriptor to file
descriptor, but on FreeBSD there isn't (as far as I could tell). This
change does a copy using the POSIX standard `read` and `write` calls.
(This change was to `RealFilesystem::rename_or_copy`).

We expect to have people on FreeBSD install CMake themselves, and use
`./bootstrap.sh -useSystemBinaries`, in order to build vcpkg.
Since CMake 3.15.2 exists in the FreeBSD 12 (latest stable) package
manager, it's trivial to install it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants