Hi,

I have been writing a new Julia package, which I have called Nemo (it's 
essentially a limited computer algebra system).

I have two specific problems:

1) The git and GitHub repository for Nemo already exists, but I haven't 
created a Julia Pkg yet.

https://github.com/wbhart/nemo

The documentation on creating a Julia Pkg seems to assume you are going to 
start with the Pkg then commit code to the git repository that it creates, 
not create a git/github project and then add the necessary stuff to turn it 
into a Julia package.

Is there documentation somewhere explaining how to do the latter? Or can 
someone help me with doing the latter?

(I have a couple of small build issues to fix in order for flint to work on 
Windows 64 before it will work there. But I will be working on those right 
away. I have managed to get it to work with Julia there, just not hacked 
the fixes into the flint build system yet. Other than this minor thing, I 
am quite ready to publish Nemo as a package right away (well, apart from a 
horrible 3x slowdown and excessive memory usage caused by gc, but I think 
I've given up on solving that problem for now).)

2) Nemo relies on mpir (or GMP), mpfr and flint, which are large external 
C/assembly libraries which need to get built or be available to run Nemo. I 
understand Julia has its own GMP and MPFR which I can probably link to if 
they are recent enough. 

Flint needs to be built when the package is installed. It takes a long time 
to build, e.g. 40 minutes or so on Windows, maybe a third of that on Linux.

I can't find any documentation explaining where to put the commands in a 
Pkg to actually git clone flint, build it, install it and set up paths for 
Nemo. Given the complexities of installing flint for the user, I'd like to 
have the Julia package manager do this automatically if at all possible. 
And I see it does seem to be possible. I just can't figure out how.

Flint is here:

https://github.com/wbhart/flint2

Can anyone help, or point me in the right direction?

Bill.

Reply via email to