# Problem to run XFCE4 shared library not found FreeBSD 9.0 Release



## Boutentrain (Nov 13, 2013)

I have some trouble today to start Xfce4. Indeed, I do not know what is happening. It is possible I installed something wrong. Anyway, I cannot start Xfce4 because of a missing library. So I tried to do `portupgrade -af`. But the prompt indicates that there are some problem to run portupgrade and advised me to add the -O option. So, I tried to run `portupgrade -afO`. This command worked.

Then when all compiling was done I rebooted my computer then I tried again to run Xfce4 and there is a new library problem but not the same missing library? So I tried to use portmaster in order to fix some library dependencies with the command `portmaster xfce4`.

Portmaster ran correctly first. Then it proposed to me if those are  reasonable. I said yes and quickly portmaster indicates "aborted" and  "terminated. So I do not know what can I do to run Xfce4. May I reinstall Xfce4? How can I use portmaster or portupgrade correctly? Have I missed something?

Thanks for helping me.


----------



## trh411 (Nov 13, 2013)

I suggest you install sysutils/bsdadminscripts and then run `pkg_libchk xfce`. That will give you a list of any missing libraries for x11-wm/xfce. You can then use ports-mgmt/portmaster to install them.

FYI, on a global scale, just running `pkg_libchk` (with no arguments), will check all installed packages/ports on your system for missing libraries.


----------



## Boutentrain (Nov 13, 2013)

Ok, I will try it this evening and I will give you feedback ASAP. Thanks for responding.


----------



## wblock@ (Nov 13, 2013)

Do not use -af routinely.  It is not usually needed and can have problems.

Read Upgrading FreeBSD Ports for an overview of how to manage ports.

x11-wm/xfce4 is a meta-port, and pkg_libchk may not work on it.  As @trh411 suggests, run `pkg_libchk` without options.  Rebuild all the ports it reports, preferably by giving that list of filenames to `portmaster`.

I recommend not using portupgrade any more.


----------



## Boutentrain (Nov 13, 2013)

I try to run the first missing library lixfce4util, I run `portmaster libxfce4util`. However, the process is aborted because of a certain software requirement with specific or greater version. For example here, it needs Perl >= 5.8.1

May I use portsnap or something like that?


----------



## trh411 (Nov 13, 2013)

Yes, use `portsnap fetch update` to bring your ports tree current. Your version of lang/perl5 is ancient. The current recommended version is 5.16.


----------



## wblock@ (Nov 13, 2013)

Please read the article linked in post #4.  If you do not check /usr/ports/UPDATING, you will miss important manual steps that must be performed.


----------



## Boutentrain (Nov 14, 2013)

Ok noted. Last night, I launched `portsnap fetch update` and it works. So I have to read your suggestion and try something with portmaster. I will give you feedback.

Thank you.


----------



## SirDice (Nov 15, 2013)

Please also upgrade to 9.1 or 9.2. FreeBSD 9.0 has been end-of-life since March 2013.

[thread=40469]Topics about unsupported FreeBSD versions[/thread]


----------



## Boutentrain (Nov 15, 2013)

Last night, I tried to follow the /usr/ports/UPDATING instructions. But, most of the time the portmaster  command aborted and terminated. I am a little be confused about it.

I would like to try the instruction indicated in #post4 with the following command: `# portmaster -na > /tmp/portorder.txt`. So that portmaster shows any configuration screens that require options to be set before it begins the build.

What do you think about it?


----------



## Boutentrain (Nov 15, 2013)

@SirDice,

Is it reasonable to upgrade to a new version every six months? Because I have already upgraded FreeBSD to 9.0-RELEASE this year. I would like to upgrade the kernel if it is necessary? Moreover, on the ftp-archive server, I can see old versions and I hope I can use 9.0-RELEASE like that? Or am I mistaken?


----------



## SirDice (Nov 15, 2013)

Stick to 9.1 in that case. All .0 versions go end-of-life as soon as a .1 is available. FreeBSD 9.1 will be supported until December 2014.


----------



## Boutentrain (Nov 15, 2013)

Ok so I will upgrade it to 9.1. If I understand well, when the FreeBSD 10.0 will come, it is preferable to waiting for the 10.1? Is that true?

If I upgrade to 9.1, is it necessary to do a `portsnap fetch extract` or just a `portsnap fetch update`? And when a porstnap is done is it necessary to do a `portmaster -af`?


----------



## wblock@ (Nov 15, 2013)

Boutentrain said:
			
		

> Ok so I will upgrade it to 9.1. If I understand well, when the FreeBSD 10.0 will come, it is preferable to waiting for the 10.1? Is that true?



It's a judgement call, depending on your situation.



> If I upgrade to 9.1, is it necessary to do a `portsnap fetch extract` or just a `portsnap fetch update`?



The second.  extract only needs to be done once.



> And when a porstnap is done is it necessary to do a `portmaster -af`?



No.  In fact, I can't think of any time it is appropriate to use `portmaster -af`.  It forces the rebuild of every installed port, generally a waste of time.  If you really need to rebuild every port (only necessary when upgrading between major versions of FreeBSD), there is a faster procedure in the portmaster(8) man page.


----------



## Boutentrain (Nov 16, 2013)

Ok @wblock, thanks for your advice.

So, I tested the command line `portmaster -na > /tmp/portorder.txt`. Then, I tried to run portmaster for each thing hand by hand. In the beginning, that seemed to work. But [one? some? -- mod.] of them did not work. portmaster aborted and terminated the updating.

After that, I would like to reinstall all the ports with the instructions indicated in portmaster's manual page:

```
Using portmaster to do a complete reinstallation of all your ports:
	   1. portmaster --list-origins > ~/installed-port-list
	   2. Update your ports tree
	   3. portmaster --clean-distfiles-all
	   4. portmaster --check-port-dbdir
	   5. portmaster -Faf
	   6. pkg_delete '*'
	   7. rm -rf /usr/local/lib/compat/pkg
	   8. Manually check /usr/local and /var/db/pkg
	      to make sure that they are really empty
	   9. Re-install portmaster
	   10. portmaster `cat ~/installed-port-list`
```
Nevertheless, the step number 5 did not work, but I continued the other steps until number 10 where I had some trouble because of software which did not exist anymore. So, I removed from the installe-port-list file the non-existing port. Then, I ran another time the step number 10 but portmaster aborted and terminated after some time. So, I decided to reinstall hand by hand the port and I would like to begin with xorg. But apparently, there was a problem with the Makefile. So I do not know what can I do except to reinstall all the system.


----------



## wblock@ (Nov 16, 2013)

"portmaster aborted" is not helpful.  Why?  What did you do for step #2?


----------



## Boutentrain (Nov 16, 2013)

For step 2 I used `portsnap fetch update`. Is that good?


----------



## kpa (Nov 16, 2013)

Start providing log files of your failed update runs, use a service like http://pastebin.com if they are too big to paste them here. We try to be helpful as much as we can but without seeing the actual error messages were are in the dark.


----------



## Boutentrain (Nov 16, 2013)

Ok, you can see what happens when I launch step 10 with postmaster: http://pastebin.com/hirBLX8n


----------



## kpa (Nov 17, 2013)

You probably need to do this UPDATING step:


```
20120512:
  AFFECTS: users of textproc/p5-XML-SAX
  AUTHOR: crees@FreeBSD.org

  p5-XML-SAX (X-S) was split into p5-XML-SAX-Base (X-S-B) and p5-XML-SAX for
  version 0.99.  Since X-S-B now installs some files formerly installed by X-S
  the package for X-S must be deinstalled before updating X-S.

  # pkg_delete -fx p5-XML-SAX
  # portmaster textproc/p5-XML-SAX

  (users of pkgng can substitute pkg_delete with pkg delete)
```

You see, we could have eventually been able to figure this out but seeing the error message in your build log it was completely clear that it had to be an UPDATING entry that wasn't being followed.


----------



## Boutentrain (Nov 18, 2013)

I ran your command and indeed, portmaster worked a little longer. But, after that when I would like to `make install clean` xorg some errors occurred. I tried to upgrade the OS to 9.1-RELEASE. It worked. But I think, I'd never make it. I would like to give up. 

With my little experience with FreeBSD, I can say that it is easier to manage some server or utilities, like FTP or SSH, than to update and keep my software stable. I have had some problems with libraries before, and I used the ln command. But, I think that is not the solution to work with the not right library.

I would like to thank all people who tried to help me here.


----------



## Boutentrain (Nov 24, 2013)

Finally, I did not give up.  I have at last found a way, even though that is not the best solution.

So, I removed all the packages, I installed xorg. But some libraries were missing. I used the pkg_libchk command, in order to fix all libraries missing. I tried to install some libraries. However, some were with a most recent version. And I used the ln command even if I know that is not the best solution. Then I installed xfce4 and I redo the same process with xorg and finally it works. However, I would like to know if there is a best solution to update some ports/software?

Anyway, I would like to thanks all people who give me some help.


----------

