Restriction on writing to Pkg directory

Is it possible that Travis + Julia + Project.toml no longer accepts writing to a temporary directory inside the package directory? This prevents me from compiling and running the usual CmdStan.jl tests.

It would be unfortunate to drop that feature and write them to a ‘proper’ tmp directory.

Please link to the build, it’s unclear what you are talking about otherwise.

Thank you.

A link is https://travis-ci.org/StanJulia/CmdStan.jl/jobs/543497653

At that point the stan program is compiled to a C++ program which is then compiled to a binary.

I’m trying to debug on Travis where it goes wrong

All I see is:

An error occurred while compiling the Stan program.

Please check your Stan program in variable ‘bernoulli’ and the contents of /tmp/jl_rfhazt/bernoulli_build.log

Checking that file should reveal what the exact compilation problem is. You can request debug mode from Travis support to do that manually.

Thanks for your help!

At that point I have been calling make for a number of years without problem (until the support for Pkg3 was added). I asked the question in the hope someone would recognize why this might have happened. Debugging Travis is unfortunately beyond my skill set.

By inserting run(pipeline(...)) statements I can see make executes the first part (generating a C++ program) correctly but fails during the compilation step (no binary is ever added). I’m sure occasionally I’ll take a stab at this problem again, but for now I’ll just disable this part of the Travis testing. My original assumption (write permissions had somehow changed) appears incorrect.

Again, thanks for your help.

Just for completeness I’ll continue to report here. It works fine on Travis OSX! Thus my new hypothesis is maybe an g++ version issue. Will check that with the Stan team.

Links:
https://travis-ci.org/StanJulia/CmdStan.jl/jobs/543810597 (linux)
https://travis-ci.org/StanJulia/CmdStan.jl/jobs/543810604 (osx)

As you suggested, I now print out the contents of make.log and build.log, which helps big time.

Build dist: trusty

dist: xenial will give you a newer g++.

Thank you! Very much in sync with a suggestion by the Stan developers! Trying it right now. And I had noticed that line in Tamas Papp’s StanRun.jl.

Success!

(You can mark a post as a solution by pressing the tick icon below it. This will also mark the topic resolved.)