Jump to content

Linux Multiarch


practicing01

Recommended Posts

Hello, I tried to run a 32bit linux app on a 64bit system by installing "multiarch" using the steps here: http://unix.stackexchange.com/questions/12956/how-do-i-run-32-bit-programs-on-a-64-bit-debian-ubuntu It didn't work. After that I tried to compile the app natively and now it doesn't compile. I get the errors

/usr/bin/ld: cannot find -lXxf86vm

/usr/bin/ld: cannot find -lXext

/usr/bin/ld: cannot find -lX11

/usr/bin/ld: cannot find -lXft


I'm guessing linux destroyed itself. Any ideas?

Link to comment
Share on other sites

I don't use ubuntu, I don't like it. Is a very special distro :lol: and frequently the problem only apply to ubuntu distros....


Ok, as recomendation never install multiarch/multilib on a system. Try always to use 64bit version of the app. If you don't know, you may hurt the system, it don't destroy itself hahaha


Basically multilib/multiarch what do is, have two folders "lib" and "lib64". Apps 32b use lib folder Apps 64b use lib64.


Ok First, try to clean you system and remove the multiarch you installed. I try to compile the app with x64. I think you may need to post your question on a ubuntu forum, because that steps are very strange to me.


or if you share more info I can try to help you.

Link to comment
Share on other sites

trying to run and trying to compile are pretty different things, while compiling 32bit can be awkward especially with regard to external libraries, the multiarch gcc package should make everything work fine so long as the correct flags are set in your makefile.


As for running adding the i386 architecture has always solved the issue for me, but then again ive not run especially complex software out of native space.

Link to comment
Share on other sites

I don't use ubuntu, I don't like it. Is a very special distro :lol: and frequently the problem only apply to ubuntu distros....

 

Then, can u recommend a distro for developing. I need to setup a  linux vm to do some web things and try to do some torque things when I get a new job.

Link to comment
Share on other sites

Then, can u recommend a distro for developing. I need to setup a  linux vm to do some web things and try to do some torque things when I get a new job.

 

Yes of course. Everything is summed, what you want to do? and what is your skill level? the truth is, almost everything you can do in any distro, but we fall into the question again, what is your skill level? So, why I asked "what you want to do?" if I can do in any distro, because some distros have "ready" or "plug and play" some stuff.


Another truth is, any distros has his philosophy *1, and you need to know it, this is very important this affect how you use it or how you manage the system, you need to adapt yourself to your linux system, not the other way, unless you make a distro or have a high linux skill level of course...


Apologizes for the brief longer explanation :D


So, let me try to recommended a good distro for what you need...


For everything you said, I can recommend the following distros...


Skill level easy

- Fedora


Skill level intermediate

- Arch Linux


Skill level high

- Slackware


I'm using the following criteria for choosing that distros: for learning linux, development, linux philosophy, gaming, web services, the skill you learn can apply to a job, for desktop use, for home server use, stability and other criteria related to updated/outdated apps but need more explaining and I have sleep! . :lol:


Returning to your main question, I used a lot Slackware, Arch Linux (and others distros like gentoo, etc) and the method to install a multilib environment was very easy, without exaggeration one or two commands.


See this:

Arch Linux

https://wiki.archlinux.org/index.php/Multilib


Slackware Linux

http://www.slackware.com/~alien/multilib/


As you can see is easy, 2 steps, ripped all the explanations, of course you need to know what are you doing.


If you have any doubt please comment it....


*1 Read about Slackware philosophy for understand what I mean: http://docs.slackware.com/slackware:philosophy - https://en.wikipedia.org/wiki/Slackware#Design_philosophy


regards

J

Link to comment
Share on other sites

thanks for so much inputs here Johxz.

It seems your are a very high level user of linux.

The recommendations inclined to those clean distros.

The very popular and beginner friendly debian family is excluded.


I have only some experience of solaris and a bit freeBSD.

And has been working in windows with enterprise software for 10 years.

But it is difficult to find job. I need pick some linux & java skill to feed myself.

And expecting at least to help t3d testing in the future.

Since my noobility I want to use same distro with you developers to reduce my hassle. I will try Slackware and Arch.

Thanks.

Link to comment
Share on other sites

@deathbravo yea you can use Debian or Debian base family. I recommend to use Debian BTW and use the unstable or testing repo it has moderns apps for a Desktop PC, updated but unstable, if I'm not wrong, Ubuntu is based on Debian unstable repo.


I'm not forcing to use any distro, but as recommendation don't use Ubuntu or Ubuntu family :lol: and a professional recommendation, if you want at some point work in Linux, stay away of Ubuntu, if you used, you will learn Ubuntu not Linux, and that is the problem.


If someone not technical will use a Linux OS, yea you can recommend to him Ubuntu, PCLinuxOS *1, Mageia , Linux Mint amount others because they will never dig in the OS, they only will use the GUI. This kind of distros hide a lot of stuff, so at GUI level is pretty good and this is the main goal/"philosophy", but behind is a mess of files and dependencies... (may be this is not true for all desktop user friendly distros)


BTW I forgot to mention, you need multilib or multiarch? I was assuming you need multilib but may be I'm wrong.


Please see this for the differences:

http://wookware.org/talks/multiarch-ELC2012.pdf

https://wiki.debian.org/Multiarch/HOWTO#What_is_this_Multiarch.3F


Just to be sure if you not already see it: http://wiki.torque3d.org/coder:compiling-in-linux


*1: http://pclinuxoshelp.com/index.php/PCLinuxOS - Philosophy of PCLinuxOS


NOTE: If you want to keep talking about this kind of subject, we can do it in the forum/general ;)

Link to comment
Share on other sites

I'm not forcing to use any distro, but as recommendation don't use Ubuntu or Ubuntu family :lol: and a professional recommendation, if you want at some point work in Linux, stay away of Ubuntu, if you used, you will learn Ubuntu not Linux, and that is the problem.

 

http://i.imgur.com/UgKrxPl.png

also

http://i.imgur.com/Xa1nuwu.png

Link to comment
Share on other sites

I'm on mint linux, best distro. I tried installing the :i386 versions alongside the native versions of the dependencies. libxft-dev doesn't want to cooperate. I get the following error when running sudo apt-get install libxft-dev:i386 libxft-dev:


The following packages have unmet dependencies:

libxft-dev : Conflicts: libxft-dev:i386 but 2.3.1-2 is to be installed

libxft-dev:i386 : Depends: libfontconfig1-dev:i386 but it is not going to be installed

Depends: libfreetype6-dev:i386 but it is not going to be installed

Conflicts: libxft-dev but 2.3.1-2 is to be installed

E: Unable to correct problems, you have held broken packages.


Also tried forcing -m64 to compile natively but got an error.

Link to comment
Share on other sites

Is very odd if you have conflicts packages, unless you have installed some package outside of the distro repository.


Please shared a screenshot of your console/terminal, I think something is missing in that log.


Not sure but try this:

 

[code2=bash]apt-get clean

apt-get update

apt-get -f YOUR_PACKAGE[/code2]

 

Please show me what libXXX packages have you installed, to know if the Linux already have that package installed but with other version.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...