problems building swift-3.0-RELEASE


(Jon Rafkind) #1

I am getting build errors in the clang/ directory when all of the swift-related components are checked out to the swift-3.0-RELEASE tag.

First I checked out apple/swift from github, ran utils/update-checkout, then checked out each component to use swift-3.0-RELEASE (which I had to do manually because update-checkout won't run git pull --tags..)

Anyway the first build error is

swift $ utils/build-script -r

/Users/jonrafkind/tmp/swift3/llvm/tools/clang/utils/TableGen/TableGen.cpp:244:37: error: too few arguments to function call, at least argument 'Argv0' must be specified
   sys::PrintStackTraceOnErrorSignal();
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/Users/jonrafkind/tmp/swift3/llvm/include/llvm/Support/Signals.h:47:3: note: 'PrintStackTraceOnErrorSignal' declared here
   void PrintStackTraceOnErrorSignal(StringRef Argv0,

Which I solved by passing in argv[0] to PrintStackTraceOnErrorSignal(). Then I got some new errors that I have not attempted to solve.

In file included from /Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/APINotes/APINotesWriter.cpp:17:
/Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/APINotes/APINotesFormat.h:40:22: error: unknown type name 'Fixnum'
using IdentifierID = Fixnum<31>;
/Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/APINotes/APINotesWriter.cpp:233:33: error: unknown type name 'data_type'
     using data_type_ref = const data_type &;

In file included from /Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/Basic/Attributes.cpp:1:
In file included from /Users/jonrafkind/tmp/swift3/llvm/tools/clang/include/clang/Basic/Attributes.h:14:
/Users/jonrafkind/tmp/swift3/llvm/tools/clang/include/clang/Basic/TargetInfo.h:635:51: error: implicit instantiation of undefined template 'llvm::ArrayRef<int>'
     void setRequiresImmediate(llvm::ArrayRef<int> Exacts) {

Thats just a selection of the errors. Which branch of clang/llvm should I use to be able to build swift 3.0?


(Jon Rafkind) #2

Sorry this was user error. Somehow I didn't have either llvm or clang checked out to swift-3.0-RELEASE before I started the build.

It would be great if update-checkout were changed to run 'git pull --tags', I think. I tried adding it to the script myself but I got some obscure git error.

···

On 10/25/2016 04:50 PM, Jon Rafkind via swift-dev wrote:

I am getting build errors in the clang/ directory when all of the swift-related components are checked out to the swift-3.0-RELEASE tag.

First I checked out apple/swift from github, ran utils/update-checkout, then checked out each component to use swift-3.0-RELEASE (which I had to do manually because update-checkout won't run git pull --tags..)

Anyway the first build error is

swift $ utils/build-script -r

/Users/jonrafkind/tmp/swift3/llvm/tools/clang/utils/TableGen/TableGen.cpp:244:37: error: too few arguments to function call, at least argument 'Argv0' must be specified
  sys::PrintStackTraceOnErrorSignal();
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/Users/jonrafkind/tmp/swift3/llvm/include/llvm/Support/Signals.h:47:3: note: 'PrintStackTraceOnErrorSignal' declared here
  void PrintStackTraceOnErrorSignal(StringRef Argv0,

Which I solved by passing in argv[0] to PrintStackTraceOnErrorSignal(). Then I got some new errors that I have not attempted to solve.

In file included from /Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/APINotes/APINotesWriter.cpp:17:
/Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/APINotes/APINotesFormat.h:40:22: error: unknown type name 'Fixnum'
using IdentifierID = Fixnum<31>;
/Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/APINotes/APINotesWriter.cpp:233:33: error: unknown type name 'data_type'
    using data_type_ref = const data_type &;

In file included from /Users/jonrafkind/tmp/swift3/llvm/tools/clang/lib/Basic/Attributes.cpp:1:
In file included from /Users/jonrafkind/tmp/swift3/llvm/tools/clang/include/clang/Basic/Attributes.h:14:
/Users/jonrafkind/tmp/swift3/llvm/tools/clang/include/clang/Basic/TargetInfo.h:635:51: error: implicit instantiation of undefined template 'llvm::ArrayRef<int>'
    void setRequiresImmediate(llvm::ArrayRef<int> Exacts) {

Thats just a selection of the errors. Which branch of clang/llvm should I use to be able to build swift 3.0?

_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev