make install fails as it tries to write in /tmp

Harald Koch root at c-works.net
Wed Oct 28 14:56:36 UTC 2020


Hi Thibaut,

there must be something else in your environment: I chmod’ed my /tmp to 770, added a new user, checked that we cannot access /tmp, and successfully compiled openssl-1.1.1h on a test machine. The reason could lie somewhere else than /tmp.


> Am 28.10.2020 um 13:13 schrieb Thibaut Appel <t.appel17 at imperial.ac.uk>:
> 
> Dear Harald,
> 
> Thank you for your answer.
> 
> In fact my environment variable TMPDIR was already set to an appropriate folder, in my bash environment.
> 
> Did you mean it is meant to be set somewhere else at build or install time?
> 
> Output of perl --version gives me: This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi
> 
> I did try to change the hard-coded '/tmp' occurences in unix-Makefile.tmpl to the said folder, and it gave me something like:
> 
> ar: /my/dir/lib/libcrypto.so: file format not recognized
> 
> Is there anything else I can try?
> 
> 
> 
> Thibaut
> 
> 
> 
> On 28/10/2020 13:00, Harald Koch wrote:
>> 
>> This email from root at c-works.net <mailto:root at c-works.net> originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list <https://spam.ic.ac.uk/SpamConsole/Senders.aspx> to disable email stamping for this address. 
>>  
>> Hello Thibaut,
>> 
>> I assume due to the name prefix „ar“ that an archive wants to be created via program „ar“. According to its man page, you can set the environment variable TMPDIR to your required value. Try this.
>> 
>> (from „man ar“):
>> 
>> ENVIRONMENT
>>      TMPDIR  The pathname of the directory to use when creating temporary files.
>> 
>> Regards,
>> Harald
>> 
>>> Am 28.10.2020 um 09:48 schrieb Thibaut Appel <t.appel17 at imperial.ac.uk <mailto:t.appel17 at imperial.ac.uk>>:
>>> 
>>> Dear OpenSSL users,
>>> 
>>> I uncovered a potential issue affecting the installation of OpenSSL from source, in the case the user is not allowed to write in the /tmp folder.
>>> 
>>> I'm trying to install on a cluster where permissions to '/tmp' is restricted.
>>> 
>>> Is there an environment variable designed to tell 'make install' to NOT use /tmp?
>>> 
>>> My $TMP environment variable points to a different folder. The result of:
>>> 
>>> ./config --prefix=/rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h
>>> make && make install
>>> 
>>> install libcrypto.a -> /rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h/lib/libcrypto.a
>>> install libssl.a -> /rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h/lib/libssl.a
>>> link /rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h/lib/libcrypto.so -> /rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h/lib/libcrypto.so.1.1
>>> install libcrypto.so -> /rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h/lib/libcrypto.so
>>> install libcrypto.so.1.1 -> /rds/general/user/home/.linuxbrew/Cellar/openssl at 1.1/1.1.1h/lib/libcrypto.so
>>> mkdir: cannot create directory '/tmp/ar.12361': Permission denied
>>> make: *** [install_dev] Error 1
>>> 
>>> Is there something I'm missing? How can this be circumvented?
>>> 
>>> Thanks,
>>> 
>>> Thibaut
>>> 
>>> 
>>> 
>> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mta.openssl.org/pipermail/openssl-users/attachments/20201028/b63f512c/attachment-0001.html>


More information about the openssl-users mailing list