linux app wont start...

Alexander Leidinger Alexander at Leidinger.net
Wed Mar 23 15:07:21 UTC 2011


Quoting Alex <other at ahhyes.net> (from Wed, 23 Mar 2011 21:17:10 +1100):

> I tried changing the first line to use the /compat/linux/bin/sh  
> shell. made no difference. I added set -x:

After looking at the script I do not expect to run with a linux shell  
(it specially looks if it is running on FreeBSD amd64).

> [game at srv ~/bf2]$ ./start.sh
> + MACH=''
> + uname -m
> + MACH=ia-32
> + [ -d pb ]
> + pwd
> + BINARY_DIR=/usr/home/game/bf2/bin
> + [ -d /usr/home/game/bf2/bin/ia-32 ]
> + BINARY_DIR=/usr/home/game/bf2/bin/ia-32
> + export LD_LIBRARY_PATH=/usr/home/game/bf2/bin/ia-32
> + exec /usr/home/game/bf2/bin/ia-32/bf2

Have you actually checked if you have xterm in your path ("which  
xterm")? If not, do this now and if it is missing, install it and try  
again. If it is in your path, you can continue with debugging as  
described below.


Replace the
    exec $BINARY_DIR/bf2 "$@"
with
    /usr/bin/ktrace -i $BINARY_DIR/bf2 "$@"

This will create a file ktrace.out in the current directory. Install  
the linux_kdump package (the port is too much hassle, it's really  
better to take the package) and run the linux_kdump. It will have a  
look at the ktrace.out in the current directory and output a lot of  
text. Review the text from the end on backwards to anything related to  
xterm. Maybe you can see if it tries to access some file it does not  
find.

Bye,
Alexander.

> Error opening terminal: xterm.
>
> I'm lost :/ I am still new to linux emulation in freebsd, so please  
> bear with me if my questions seem silly. :>
>
> On Wed, 23 Mar 2011 09:52:22 +0100, Alexander Leidinger wrote:
>> Quoting Alex <other at ahhyes.net> (from Wed, 23 Mar 2011 17:29:05 +1100):
>>
>>> Hi Guys,
>>>
>>> I am trying to run a battlefield 2 server on FreeBSD 8.2 with  
>>> linux  emulation enabled, I have some other apps that run just fine.
>>>
>>> Here is the error I get:
>>>
>>> [game at srv ~/bf2]$ ./start.sh
>>> Error opening terminal: xterm.
>>>
>>> [game at srv ~/bf2]$ echo $TERM
>>> xterm
>>>
>>> I can "export TERM" and set another value but the result is always  
>>>  the same it will just say "Error opening terminal <whatever>"
>>>
>>> I have a suspicion it's to do with the termcap in the linux compat  
>>>  section, not the local freebsd termcap.
>>
>> IMO: There is not enough info to conclude this.
>>
>> It is not obvious which shell is used to execute start.sh (linux
>> shell  or FreeBSD shell). To determine this we need to see the first
>> line of  the script. I would expect a FreeBSD one is started and I
>> would  suggest to try a linux one instead.
>>
>> Did you see any messages on the console (run "dmesg" after a failed
>> start and have a look for unusual output).
>>
>> I would also suggest to have "set -x" as the second line in the
>> script, this will give you a trace what is executed. The output needs
>> to be reviewed then to analyze what is going on. After a suspicious
>> action is tracked down, this action can maybe started within ktrace
>> and the linux_kdump port can then be used to further investigate what
>> is going on.
>>
>> Bye,
>> Alexander.
>
> _______________________________________________
> freebsd-emulation at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
> To unsubscribe, send any mail to "freebsd-emulation-unsubscribe at freebsd.org"
>
>



-- 
Bahdges?  We don't need no stinkin' bahdges!
		-- "The Treasure of Sierra Madre"

http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137


More information about the freebsd-emulation mailing list