# LibreOffice - Question re time to compile



## zzyzcx (Oct 14, 2011)

I am pretty new to FreeBSD.

I am installing the LibreOffice port. It has been compiling now for about 14 hours (that is in addition to the time it took to get the dependencies installed). 

My machine is an older laptop - CPU is AMD Athlon XP-M, with 512 MB RAM

Couple questions:

1) How long has this compile taken for others?
2) Is it going to take this long to compile every time there is an update to the LibreOffice port?
3) I am trying to stick to ports only and avoid packages - I have read the warnings about mixing packages and ports. Is it going to create issues if I just use one or two packages, for these really big build projects? (Right now LibreOffice is the only one that has been so big as to be really, really time-consuming.)

I enjoy using ports for lots of reasons, but if I'm going to lose my computer for a day everytime there's an update to LibreOffice, I would make an exception for this one package - as long as it doesn't cause me lots of headaches.

What say ye?


----------



## ath0 (Oct 14, 2011)

Hello zzyzcx

sadly yes every time compiling LibreOffice will take a long time. On my Athlon II X2 laptop i have 4 h fun every time but on my Phenom II X4 Desktop it's done in 2 h.
I have never used packages but imho it's ok if you use some packages. Perhaps you should use more packages than ports in my opinion your box is to slow for this much compiling. 
I think it will be frustrating, if you can't use your computer if you run an update.

regards ath0


----------



## zzyzcx (Oct 15, 2011)

Thanks ath0.

It finally finished compiling (after about 20 hours).

For now, because I am only experimenting with FreeBSD, I will stick to ports. I am doing it as much for the learning experience as anything.

When I get up to speed on FreeBSD I will have to set it up on a faster box that will handle these challenges better. 

For now - patience.


----------



## wblock@ (Oct 15, 2011)

Investigate the use of nice(1) to lessen the impact of background port building.  I've mentioned elsewhere that using a shell with antialiasing slows down interactivity, all those characters being rendered and scrolling off the screen.  Building in a disconnected sysutils/tmux session improves that a lot.


----------



## jb_fvwm2 (Oct 16, 2011)

For a long time I did not know that one can cntl-c a build (or simply exit X if it is running in an xterm), and as long as the work subdirectory remains as it was, one can restart the port (98 percent of the time probably) and it will after a few seconds pick up where it left off.  So if a large port is slowing down your browsing, you can maybe restart it while you are out of the room even... (imho a usability *feature* of the ports system...) or if too many tabs are open in the browser to compile at the same time.  Wish I'd known about it back in 2004 when I first installed...


----------



## zzyzcx (Oct 16, 2011)

@wblock: Thank you for that tip about nice(1) which led me also to renice(1). I have libreoffice-legacy compiling now in another terminal even as I write this, using
`# renice 10 -g 1334`
and I am able to browse the net comfortably while my box is humming away.
I will take a look at sysutils/tmux as well. For right now, while I am still getting the hang of what's going on, I like to see those commands scrolling up the screen... gives me confidence that something is actually working 

@jb_fvwm2: That is good to know about using cntl-c to interrupt a build, but it makes me nervous - perhaps I'm too cautious. But when I'm in hour 13 of a massive build, the last thing I want to do is have to start over if something goes wrong. I don't even give my computer dirty looks while it's compiling for fear it might retaliate.


----------



## zzyzcx (Oct 16, 2011)

zzyzcx said:
			
		

> ... which led me also to renice(1).



Oops... it's renice(8).

Still getting the hang of the forum tags.


----------



## jb_fvwm2 (Oct 17, 2011)

jb_fvwm2 said:
			
		

> For a long time I did not know that one can cntl-c a build (or simply exit X if it is running in an xterm), and as long as the work subdirectory remains as it was, one can restart the port (98 percent of the time probably) and it will after a few seconds pick up where it left off.  So if a large port is slowing down your browsing, you can maybe restart it while you are out of the room even... (imho a usability *feature* of the ports system...) or if too many tabs are open in the browser to compile at the same time.  Wish I'd known about it back in 2004 when I first installed...



Forgot to mention, this should not be done while the port is building dependencies before the actual port... (and maybe to mention in passing, if say 
	
	



```
portmaster -d -B -i [FILE]category/port[/FILE]
```
 fails at some point, one can also change into the port subirectory and often (often not also) the build can complete without recompilation (say if portmaster failed not in the port but in an install dependency...  )


----------

