DaemonForums  

Go Back   DaemonForums > OpenBSD > OpenBSD Packages and Ports

OpenBSD Packages and Ports Installation and upgrading of packages and ports on OpenBSD.

Reply
 
Thread Tools Display Modes
  #1   (View Single Post)  
Old 30th September 2020
notooth notooth is offline
Shell Scout
 
Join Date: Jul 2015
Posts: 118
Red face Need help building Julia from source

Hello,

Can anyone help me build Julia? I failed building it with the errors:

Code:
$ make
*** Parse error in /home/notooth/julia: Could not find /Make.inc (Makefile:2)
*** Parse error: Missing dependency operator (Makefile:11)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "("", "command line")" (Makefile:23)
*** Parse error: Need an operator in 'else' (Makefile:31)
*** Parse error: Need an operator in 'endif' (Makefile:33)
*** Parse error: Need an operator in 'else' (Makefile:34)
*** Parse error: Need an operator in 'endif' (Makefile:37)
*** Parse error: Need an operator in '' (Makefile:39)
*** Parse error: Need an operator in ')' (Makefile:40)
*** Parse error: Missing dependency operator (Makefile:50)
*** Parse error: Need an operator in 'else' (Makefile:53)
*** Parse error: Need an operator in 'JULIA_VAGRANT_BUILD' (Makefile:54)
*** Parse error: Need an operator in 'endif' (Makefile:56)
*** Parse error: Need an operator in 'endif' (Makefile:57)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "(, 1)" (Makefile:97)
*** Parse error: Need an operator in 'else' (Makefile:99)
*** Parse error: Need an operator in 'endif' (Makefile:101)
*** Parse error: Missing dependency operator (Makefile:158)
*** Parse error: Need an operator in 'endif' (Makefile:160)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "(, 1)" (Makefile:164)
*** Parse error: Need an operator in 'endif' (Makefile:167)
*** Parse error: Missing dependency operator (Makefile:177)
*** Parse error: Need an operator in 'else' (Makefile:179)
*** Parse error: Need an operator in 'endif' (Makefile:181)
*** Parse error: Missing dependency operator (Makefile:182)
*** Parse error: Need an operator in 'endif' (Makefile:184)
*** Parse error: Missing dependency operator (Makefile:185)
*** Parse error: Need an operator in 'else' (Makefile:187)
*** Parse error: Need an operator in 'endif' (Makefile:189)
*** Parse error: Missing dependency operator (Makefile:191)
*** Parse error: Need an operator in 'endif' (Makefile:193)
*** Parse error: Missing dependency operator (Makefile:196)
*** Parse error: Need an operator in 'endif' (Makefile:198)
*** Parse error: Missing dependency operator (Makefile:200)
*** Parse error: Missing dependency operator (Makefile:201)
*** Parse error: Missing dependency operator (Makefile:202)
*** Parse error: Need an operator in 'endif' (Makefile:204)
*** Parse error: Need an operator in 'endif' (Makefile:205)
*** Parse error: Need an operator in 'endif' (Makefile:206)
*** Parse error: Missing dependency operator (Makefile:213)
*** Parse error: Need an operator in 'std_so' (Makefile:214)
*** Parse error: Need an operator in 'endef' (Makefile:219)
*** Parse error: Need an operator in '' (Makefile:221)
*** Parse error: Need an operator in '' (Makefile:222)
*** Parse error: Need an operator in '' (Makefile:223)
*** Parse error: Missing dependency operator (Makefile:224)
*** Parse error: Missing dependency operator (Makefile:226)
*** Parse error: Missing dependency operator (Makefile:228)
*** Parse error: Need an operator in 'else' (Makefile:230)
*** Parse error: Missing dependency operator (Makefile:233)
*** Parse error: Need an operator in 'endif' (Makefile:235)
*** Parse error: Need an operator in 'endif' (Makefile:236)
*** Parse error: Need an operator in 'std_dll' (Makefile:240)
*** Parse error: Need an operator in 'endef' (Makefile:247)
*** Parse error: Need an operator in 'select_std_dll' (Makefile:252)
Bad modifier: $(shell LANG=C cc -print-search-dirs | grep '^libraries: =' | sed -e "s/^libraries: =//")' | sed -e "s!/lib/!/bin/!g")
Bad modifier: $(shell LANG=C cc -print-search-dirs | grep '^libraries: =' | sed -e "s/^libraries: =//")' | sed -e "s!/lib/!/bin/!g")
*** Parse error: Need an operator in '' (Makefile:253)
*** Parse error: Need an operator in 'endef' (Makefile:254)
*** Parse error: Need an operator in '' (Makefile:256)
*** Parse error: Need an operator in '' (Makefile:257)
*** Parse error: Need an operator in '' (Makefile:258)
*** Parse error: Missing dependency operator (Makefile:259)
*** Parse error: Need an operator in '' (Makefile:260)
*** Parse error: Need an operator in 'else' (Makefile:261)
*** Parse error: Need an operator in '' (Makefile:262)
*** Parse error: Need an operator in 'endif' (Makefile:263)
*** Parse error: Need an operator in '' (Makefile:264)
*** Parse error: Need an operator in '' (Makefile:265)
*** Parse error: Need an operator in '' (Makefile:266)
*** Parse error: Need an operator in 'endif' (Makefile:267)
*** Parse error: Need an operator in 'stringreplace' (Makefile:270)
*** Parse error: Need an operator in 'endef' (Makefile:272)
*** Parse error: Missing dependency operator (Makefile:278)
*** Parse error: Need an operator in 'endif' (Makefile:283)
*** Parse error: Missing dependency operator (Makefile:287)
*** Parse error: Need an operator in 'else' (Makefile:289)
*** Parse error: Need an operator in 'endif' (Makefile:291)
*** Parse error: Missing dependency operator (Makefile:297)
*** Parse error: Need an operator in 'endif' (Makefile:299)
*** Parse error: Missing dependency operator (Makefile:300)
*** Parse error: Missing dependency operator (Makefile:306)
*** Parse error: Need an operator in 'endif' (Makefile:309)
*** Parse error: Need an operator in 'else' (Makefile:311)
*** Parse error: Missing dependency operator (Makefile:314)
*** Parse error: Missing dependency operator (Makefile:315)
*** Parse error: Missing dependency operator (Makefile:318)
*** Parse error: Need an operator in 'endif' (Makefile:321)
*** Parse error: Need an operator in 'endif' (Makefile:322)
*** Parse error: Need an operator in 'else' (Makefile:331)
*** Parse error: Missing dependency operator (Makefile:336)
*** Parse error: Need an operator in 'endif' (Makefile:340)
*** Parse error: Need an operator in 'endif' (Makefile:341)
*** Parse error: Need an operator in 'endif' (Makefile:354)
*** Parse error: Missing dependency operator (Makefile:362)
*** Parse error: Need an operator in 'endif' (Makefile:364)
*** Parse error: Missing dependency operator (Makefile:390)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "(, Darwin)" (Makefile:391)
*** Parse error: Missing dependency operator (Makefile:392)
*** Parse error: Need an operator in 'endif' (Makefile:397)
*** Parse error: Missing dependency operator (Makefile:398)
*** Parse error: Need an operator in 'endif' (Makefile:402)
*** Parse error: Need an operator in 'endif' (Makefile:416)
*** Parse error: Missing dependency operator (Makefile:418)
*** Parse error: Missing dependency operator (Makefile:423)
*** Parse error: Need an operator in 'endif' (Makefile:426)
*** Parse error: Need an operator in 'endif' (Makefile:427)
*** Parse error: Missing dependency operator (Makefile:430)
*** Parse error: Need an operator in 'endif' (Makefile:441)
*** Parse error: Missing dependency operator (Makefile:446)
*** Parse error: Need an operator in 'endif' (Makefile:448)
*** Parse error: Missing dependency operator (Makefile:449)
*** Parse error: Missing dependency operator (Makefile:450)
*** Parse error: Need an operator in 'endif' (Makefile:453)
*** Parse error: Need an operator in 'endif' (Makefile:454)
*** Parse error: Missing dependency operator (Makefile:460)
*** Parse error: Missing dependency operator (Makefile:461)
*** Parse error: Missing dependency operator (Makefile:462)
*** Parse error: Need an operator in 'endif' (Makefile:465)
*** Parse error: Need an operator in 'endif' (Makefile:466)
*** Parse error: Need an operator in 'endif' (Makefile:467)
*** Parse error: Missing dependency operator (Makefile:468)
*** Parse error: Need an operator in 'endif' (Makefile:470)
*** Parse error: Missing dependency operator (Makefile:471)
*** Parse error: Need an operator in 'endif' (Makefile:473)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "(, Linux)" (Makefile:476)
*** Parse error: Need an operator in 'endif' (Makefile:479)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "(, WINNT)" (Makefile:480)
*** Parse error: Need an operator in 'endif' (Makefile:482)
*** Parse error: Missing dependency operator (Makefile:498)
*** Parse error: Need an operator in 'endif' (Makefile:500)
No closing parenthesis in archive specification
*** Parse error: Error in archive specification: "(, 1)" (Makefile:612)
*** Parse error: Need an operator in 'else' (Makefile:614)
*** Parse error: Need an operator in 'endif' (Makefile:616)
Reply With Quote
  #2   (View Single Post)  
Old 30th September 2020
ibara ibara is offline
QEX author
 
Join Date: Jan 2014
Posts: 754
Default

Use gmake.
Reply With Quote
  #3   (View Single Post)  
Old 30th September 2020
notooth notooth is offline
Shell Scout
 
Join Date: Jul 2015
Posts: 118
Default

Thank you for the response. But I got another error:

Code:
$ doas ln -s /bin/sha256 /bin/shasum
$ doas ln -s /bin/sha512 /bin/sha512sum
$ doas ln -s /bin/md5 /bin/md5sum
$ gmake
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   497  100   497    0     0    359      0  0:00:01  0:00:01 --:--:--   359
100  368k  100  368k    0     0  43957      0  0:00:08  0:00:08 --:--:-- 66108
===============================================================================
  ERROR: sha512 checksum failure on Pkg-f1430b5dbbdeb09236a77faf755275a611690a93.tar.gz, should be:
/home/notooth/Downloads/julia/deps/tools/jlchecksum[108]: seq: not found
  But `sha512sum /home/notooth/Downloads/julia/stdlib/srccache/Pkg-f1430b5dbbdeb09236a77faf755275a611690a93.tar.gz | awk '{ print $1; }'` results in:
      3807119602
  This can happen due to bad downloads or network proxies, please check your
  network proxy/firewall settings and delete
/home/notooth/Downloads/julia/deps/tools/jlchecksum[108]: realpath: not found
  
  to force a redownload when you are ready
===============================================================================
gmake[1]: *** [Makefile:37: Pkg-f1430b5dbbdeb09236a77faf755275a611690a93/source-extracted] Error 2
gmake: *** [Makefile:63: julia-stdlib] Error 2
Reply With Quote
  #4   (View Single Post)  
Old 30th September 2020
ibara ibara is offline
QEX author
 
Join Date: Jan 2014
Posts: 754
Default

Looks like the Julia scripts are looking for the seq(1) and realpath(1) utilities, neither of which are available on OpenBSD.

You're in luck though. I have ported realpath from DragonFly BSD and seq from FreeBSD. See my wip repo here:
https://github.com/ibara/openbsd-ports-wip
https://github.com/ibara/openbsd-por...utils/realpath
https://github.com/ibara/openbsd-por...r/sysutils/seq
Reply With Quote
  #5   (View Single Post)  
Old 1st October 2020
notooth notooth is offline
Shell Scout
 
Join Date: Jul 2015
Posts: 118
Default

How long does it take to complete the 2 wip packages? If it is possible, can you please port Julia to OpenBSD?

Last edited by notooth; 1st October 2020 at 01:03 AM.
Reply With Quote
  #6   (View Single Post)  
Old 1st October 2020
ibara ibara is offline
QEX author
 
Join Date: Jan 2014
Posts: 754
Default

Quite literally 2 seconds. They are single C file utilities.
I have too much on my plate for the short and medium term future. I wouldn't depend on me getting to something like this any time soon.
Reply With Quote
  #7   (View Single Post)  
Old 1 Week Ago
notooth notooth is offline
Shell Scout
 
Join Date: Jul 2015
Posts: 118
Default

I get another error. Can anyone help?

Code:
ar: creating libsuitesparseconfig.a
a - SuiteSparse_config.o
ld: error: undefined symbol: malloc
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: calloc
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: realloc
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: free
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: printf
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: __stack_smash_handler
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_toc)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_time)
collect2: ld returned 1 exit status
gmake[3]: *** [Makefile:53: /home/notooth/Downloads/julia/deps/scratch/SuiteSparse-5.4.0/lib/libsuitesparseconfig.so.5.4.0] Error 1
gmake[2]: *** [Makefile:23: library] Error 2
gmake[1]: *** [/home/notooth/Downloads/julia/deps/suitesparse.mk:60: scratch/SuiteSparse-5.4.0/build-compiled] Error 2
gmake: *** [Makefile:60: julia-deps] Error 2

Last edited by notooth; 1 Week Ago at 04:22 AM.
Reply With Quote
  #8   (View Single Post)  
Old 1 Week Ago
TronDD TronDD is offline
Spam Deminer
 
Join Date: Sep 2014
Posts: 245
Default

You usually have to tell the compiler/linker where to look for system libraries with -L and which libraries to load with -l.

You didn't include what command it ran so I don't know what it's trying to do or not do.
Reply With Quote
  #9   (View Single Post)  
Old 1 Week Ago
notooth notooth is offline
Shell Scout
 
Join Date: Jul 2015
Posts: 118
Default

I don't know what to tell the compiler. Here is the command I ran and the command it ran:
Code:
$ gmake OPENBLAS_USE_THREAD=0 OPENBLAS_TARGET_ARCH=NEHALEM
...
gmake -C scratch/openblas-33f76a6c378681ac2af76b20e55ff682191a1937/ CC=gcc -m64 FC=gfortran -m64 LD=ld RANLIB=ranlib TARGET=NEHALEM BINARY=64 USE_THREAD=0 NO_AFFINITY=1 INTERFACE64=1 SYMBOLSUFFIX=64_ LIBPREFIX=libopenblas64_ CFLAGS= -O2 FFLAGS= -O2 -fPIC -fdefault-integer-8 LDFLAGS= -Wl,-rpath,'$$ORIGIN' -Wl,-z,origin -Wl,-rpath-link,/home/notooth/Downloads/julia-1.5.3/usr/lib MAKE_NB_JOBS=0
...
ld: error: undefined symbol: malloc
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: calloc
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: realloc
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: free
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: printf
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_start)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_config)

ld: error: undefined symbol: __stack_smash_handler
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_toc)
>>> referenced by SuiteSparse_config.c
>>>               SuiteSparse_config.o:(SuiteSparse_time)
collect2: ld returned 1 exit status
Reply With Quote
Old 1 Week Ago
TronDD TronDD is offline
Spam Deminer
 
Join Date: Sep 2014
Posts: 245
Default

That's a gmake command. You really need to see the gcc command it's running.

What you show there has no -L or -l parameters in it but I don't know if they are getting set elsewhere and not shown here.

It also looks like it's using the old base gcc but probably the base clang linker which will cause linking problems.

Their docs seem to indicate that you need to compile with a newer gcc and you can't use clang.

Install gcc from ports, run gmake clean, then add "CC=egcc LD=egcc" to your gmake command to compile it again. See how that goes.

---

Actually, there is a USECLANG flag and it's set for FreeBSD. So maybe try that instead.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Building from source file in OpenBSD jamesbal0 OpenBSD Packages and Ports 5 14th June 2020 12:59 PM
Building from source mafkees1233 OpenBSD General 12 10th May 2019 09:49 PM
Building the System from Source hanzer OpenBSD Installation and Upgrading 10 28th October 2018 09:12 PM
Building a 10.2 system from source hanzer FreeBSD Installation and Upgrading 1 1st September 2015 01:36 AM
Building OpenBSD userland from source bceverly OpenBSD General 6 6th April 2015 07:26 PM


All times are GMT. The time now is 02:31 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick