bitbake error in SDK 1.4 Ubuntu 12.04 ( T4240 )

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

bitbake error in SDK 1.4 Ubuntu 12.04 ( T4240 )

Jump to solution
13,243 Views
aravindganesan
Contributor I

Hello,

I have to build an image for T4240.

I am using SDK 1.4 , Ubuntu 12.04.

I have setup the host environemnt,reconfigured kernel,performed the build procesure.

But when i give the command :

aravind@Aravind:~/yocto/build_t4240qds_release$ bitbake fsl-image-core

The program 'bitbake' is currently not installed.  You can install it by typing:

sudo apt-get install bitbake

aravind@Aravind:~/yocto/build_t4240qds_release$ sudo apt-get install bitbake

-------------------------

-------------------------

-------------------------

Processing triggers for python-support ...

aravind@Aravind:~/yocto/build_t4240qds_release$ bitbake fsl-image-core

Traceback (most recent call last):

  File "/usr/bin/bitbake", line 234, in <module>

    ret = main()

  File "/usr/bin/bitbake", line 197, in main

    server = ProcessServer(server_channel, event_queue, configuration)

  File "/usr/lib/pymodules/python2.7/bb/server/process.py", line 78, in __init__

    self.cooker = BBCooker(configuration, self.register_idle_function)

  File "/usr/lib/pymodules/python2.7/bb/cooker.py", line 76, in __init__

    self.parseConfigurationFiles(self.configuration.file)

  File "/usr/lib/pymodules/python2.7/bb/cooker.py", line 510, in parseConfigurationFiles

    data = _parse(os.path.join("conf", "bitbake.conf"), data)

TypeError: getVar() takes exactly 3 arguments (2 given)

ERROR: Error evaluating '${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable'

Traceback (most recent call last):

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 116, in expandWithRefs

    s = __expand_var_regexp__.sub(varparse.var_sub, s)

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 60, in var_sub

    var = self.d.getVar(key, 1)

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 260, in getVar

    return self.expand(value, var)

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 132, in expand

    return self.expandWithRefs(s, varname).value

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 117, in expandWithRefs

    s = __expand_python_regexp__.sub(varparse.python_sub, s)

TypeError: getVar() takes exactly 3 arguments (2 given)

ERROR: Error evaluating '${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[0] or 'defaultpkgname'}'

Traceback (most recent call last):

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 117, in expandWithRefs

    s = __expand_python_regexp__.sub(varparse.python_sub, s)

  File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 76, in python_sub

    value = utils.better_eval(codeobj, DataContext(self.d))

  File "/usr/lib/pymodules/python2.7/bb/utils.py", line 387, in better_eval

    return eval(source, _context, locals)

  File "PN", line 1, in <module>

TypeError: getVar() takes exactly 3 arguments (2 given)

aravind@Aravind:~/yocto/build_t4240qds_release$

What is the problem?

Please help.

Thanks,

Aravind

0 Kudos
1 Solution
3,075 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

It seems that you didn't put the file in the correct path.

Please define SRC_URI = "file://linux-qoriq-sdk.tar.gz".

And put linux-qoriq-sdk.tar.gz in folder meta-fsl-ppc/recipes-kernel/linux/files.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
20 Replies
3,075 Views
amittomar
NXP Employee
NXP Employee

Hi Aravind

Whenever you see parser error ,most of the time it has to do with wrong syntax.

In your case ,you have define SRC_URI format without any double quotes

/home/ara/yocto/meta-fsl-ppc/recipes-kernel/linux/linux-qoriq-sdk.inc:10:

unparsed line: 'SRC_URI=file:///home/qoriq/linux-qoriq-sdk.tar.gz'

ERROR: Command execution failed: Exited with 1

Its shoule be


SRC_URI= "file://linux-qoriq-sdk.tar.gz"


Can choose absolute path also.


Also,as Yiping pointed out you should have source file in files folder which you should create in same directory where recipe file is.


Thanks

Amit

0 Kudos
3,075 Views
aravindganesan
Contributor I

Dear Amit,

Thanks for your reply.

I am not getting parse error.

I also copied the .gz to /files.

I am getting error.

Please help.

Thanks,

Aravind

On Tue, Aug 26, 2014 at 1:41 PM, Amit Tomar <admin@community.freescale.com>

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

It seems that you didn't put the file in the correct path.

Please define SRC_URI = "file://linux-qoriq-sdk.tar.gz".

And put linux-qoriq-sdk.tar.gz in folder meta-fsl-ppc/recipes-kernel/linux/files.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
3,070 Views
aravindganesan
Contributor I

Dear Yiping,

Thanks for your help

Yes ur right. I changed the path.

Now the talk is running

Thanks once again

Aravind

On Aug 27, 2014 9:27 AM, "Yiping Wang" <admin@community.freescale.com>

0 Kudos
3,075 Views
amittomar
NXP Employee
NXP Employee

Hi Aravind

Did you try running "source SOURCE_THIS" command from inside /yocto/build_t4240qds_release?

Thanks

Amit

3,075 Views
aravindganesan
Contributor I

Dear Amit Tomar,

Thanks for your response.

Yes I tried it.

aravind@Aravind:~/yocto/build_t4240qds_release$ source SOURCE_THIS

aravind@Aravind:~/yocto/build_t4240qds_release$ bitbake fsl-image-core

Pseudo is not present but is required, building this first before the main build

ERROR:  OE-core's config sanity checker detected a potential misconfiguration.

    Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).

    Following is the list of potential problems / advisories:

    Failed to create a file with a long name in TMPDIR. Please use a filesystem that does not unreasonably limit filename length.

Failed to create a file with a long name in SSTATE_DIR. Please use a filesystem that does not unreasonably limit filename length.

ERROR: Execution of event handler 'check_sanity_eventhandler' failed

Please help.

Thanks,

Aravind

0 Kudos
3,076 Views
amittomar
NXP Employee
NXP Employee

Hello Aravind ,

Not sure but would suggest you to have fresh installation of SDK again and before running bitbake fsl-image-core ,run source SOURCE_THIS.

Hope it would work.

Thanks

Amit.

0 Kudos
3,076 Views
aravindganesan
Contributor I

Hello Amit Tomar

Thanks for your reply.

Does that mean that I will have to delete the qoriq folder and start from

the first step?

What will happen to the extra packages that have been installed for

reconfiguring the kernel and so on?

This process is very arduous. Is there any other way out?

Please help.

Thanks

Aravind Ganesan

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind Ganesan,

Please log out the build host and log in again, then enter into the installation path again.

Run the command "source ./fsl-setup-poky -m t4240qds", and you will enter build_t4240qds_release and could build images. Please note every time when you log in again, you need to run this command(or source SOURCE_THIS).

In addition, I want to mention more about SDK installation.

You need to install both Source and Cache ISOs, the latter contains cache binary to accelerate the building.

After install SDK, you need to execute the "scripts/host-prepare.sh" once to deploy host build environment automatically.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
3,076 Views
aravindganesan
Contributor I

Dear Yiping Wang,

Thanks for your response.

I dont understnd the login part.Do you mean I will have to close the

terminal and open it again?

Also thanks for the additional tips for SDK.

Please clarify,

Thanks,

Aravind

On Mon, Aug 25, 2014 at 8:49 AM, Yiping Wang <admin@community.freescale.com>

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

Yes, I also encountered similar problem previously, and this method works for me.

Please try, it your problem remains, please feel free to let me know.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
3,076 Views
aravindganesan
Contributor I

Dear Yiping,

Thanks for your response.

I did the following.

cd yocto----

source ./fsl -


t4240qds

source SOURCE_THIS

bitbake fsl-image-core

But still I am having the same problem.

Is this what you meant?

Please help.

Thanks,

Aravind Ganesan

On Aug 25, 2014 9:07 AM, "Yiping Wang" <admin@community.freescale.com>

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

Actually the SDK installation folder should be like this QorIQ-SDK-V1.4-20130625-yocto, have you changed the name?

First of all, please run the command

./scripts/host-prepare.sh

And please refer to my log:

[b25805@sun QorIQ-SDK-V1.4-20130625-yocto]$ source ./fsl-setup-poky -m t4240qds

Configuring for t4240qds board type

Creating an yocto build output at /home/b25805/test/QorIQ-SDK-V1.4-20130625-yocto/build_t4240qds_release

Run the following commands to start a build:

    bitbake fsl-image-full

    bitbake fsl-image-lsb-sdk

    bitbake fsl-image-flash

    bitbake fsl-image-kvm

    bitbake fsl-image-core

    bitbake fsl-image-minimal

To return to this build environment later please run:

    source /home/b25805/test/QorIQ-SDK-V1.4-20130625-yocto/build_t4240qds_release/SOURCE_THIS


In addition, do you use eCryptfs, which limits filename length?


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
3,076 Views
aravindganesan
Contributor I

Dear Yiping Wang,

Thanks for your response.

Yes i have vevrified the name,it is correct.

I have also run ./scripts command.

I have the commands below:

aravind@Aravind:~$ cd yocto/

aravind@Aravind:~/yocto$ source ./fsl-setup-poky -m t4240qdsConfiguring for

t4240qds board type

Creating an yocto build output at /home/aravind/yocto/build_t4240qds_release

Run the following commands to start a build:

bitbake fsl-image-core

bitbake fsl-image-minimal

bitbake fsl-image-lsb-sdk

bitbake fsl-image-full

bitbake fsl-image-kvm

bitbake fsl-image-flash

To return to this build environment later please run:

source /home/aravind/yocto/build_t4240qds_release/SOURCE_THIS

aravind@Aravind:~/yocto/build_t4240qds_release$ source SOURCE_THIS

aravind@Aravind:~/yocto/build_t4240qds_release$ bitbake fsl-image-core

Pseudo is not present but is required, building this first before the main

build

ERROR: OE-core's config sanity checker detected a potential

misconfiguration.

Either fix the cause of this error or at your own risk disable the

checker (see sanity.conf).

Following is the list of potential problems / advisories:

Failed to create a file with a long name in TMPDIR. Please use a

filesystem that does not unreasonably limit filename length.

Failed to create a file with a long name in SSTATE_DIR. Please use a

filesystem that does not unreasonably limit filename length.

ERROR: Execution of event handler 'check_sanity_eventhandler' failed

eCryptfs is enabled.

aravind@Aravind:~/yocto/build_t4240qds_release$ mount

/dev/sda5 on / type ext4 (rw,errors=remount-ro)

proc on /proc type proc (rw,noexec,nosuid,nodev)

sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)

none on /sys/fs/fuse/connections type fusectl (rw)

none on /sys/kernel/debug type debugfs (rw)

none on /sys/kernel/security type securityfs (rw)

udev on /dev type devtmpfs (rw,mode=0755)

devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)

tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)

none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)

none on /run/shm type tmpfs (rw,nosuid,nodev)

/dev/sda6 on /home type ext4 (rw)

/home/aravind/.Private on /home/aravind type *ecryptfs *

(ecryptfs_check_dev_ruid,ecryptfs_cipher=aes,ecryptfs

keybytes=16,ecryptfs_unlink_sigs,ecryptfs_sig=56d2a8abc66ad7f5,ecryptfs_fnek_sig=1475f7eaf2a3e469)

gvfs-fuse-daemon on /home/aravind/.gvfs type fuse.gvfs-fuse-daemon

(rw,nosuid,nodev,user=aravind)

What is the solution?

Please heklp,

Thanks,

Aravind

On Mon, Aug 25, 2014 at 12:28 PM, Yiping Wang <admin@community.freescale.com

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

ecryptfs is the cause of this problem.


Is it possible for you to disable ecryptfs ? You could find detailed process from google.

Or create a new user account without home folder encryption.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

3,076 Views
aravindganesan
Contributor I

Dear Yiping Wang,

Thanks for your response.

to remove encryptfs i have to delete all my files? so i have to install sdk

once again?

but if i create new user account then also i will have to install sdk again

right?

Then i will not get root privileges if i am another user.

This is one solution.

Another is to use the GUI.

aravind@Aravind:~$ source ./yocto/build_t4240qds_release/SOURCE_THIS

aravind@Aravind:~/yocto/build_t4240qds_release$ hob

Pseudo is not present but is required, building this first before the main

build

ERROR: Unable to parse

/home/aravind/yocto/meta-fsl-ppc/recipes-kernel/linux/linux-qoriq-sdk.bb:

Exited with "1"

ERROR: There is a confusing multiline, partially commented expression on

line 10 of file

/home/aravind/yocto/meta-fsl-ppc/recipes-kernel/linux/linux-qoriq-sdk.inc

().

Please clarify whether this is all a comment or should be parsed.

ERROR: Command execution failed: Exited with 1

Summary: There were 3 ERROR messages shown, returning a non-zero exit code

Can I use this?

Any case please suggest what i should do

Thanks,

Aravind

On Mon, Aug 25, 2014 at 3:28 PM, Yiping Wang <admin@community.freescale.com>

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

If you disable ecryptf, you need to back up your home drectory first, then delete home directory and remove packates ecryptfs-utils libecryptfs0,restore home dir then remove .private and .encryptfs.

I think create a new user account with sudo permission, and reinstall SDK again would be easier.

If further discussion is needed, please feel free to let me know.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
3,076 Views
aravindganesan
Contributor I

Dear Yiping,

Thanks for your response.

I have created a new user without encrypt.

I have done all the procedures.

But still it is not working:

I am getting the following lerror:

ara@Aravind:~/yocto/build_t4240qds_release$ bitbake fsl-image-core

Pseudo is not present but is required, building this first before the main

build

ERROR: ParseError at

/home/ara/yocto/meta-fsl-ppc/recipes-kernel/linux/linux-qoriq-sdk.inc:10:

unparsed line: 'SRC_URI=file:///home/qoriq/linux-qoriq-sdk.tar.gz'

ERROR: Command execution failed: Exited with 1

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

ara@Aravind:~/yocto/build_t4240qds_release$

My linux-qoriq-sdk.inc

LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"

PV = "3.8"

INC_PR = "r9"

#SRCREV = "4b66366af2d77de68f4bd6548d07421e13d3df05"

#SRC_URI = "git://git.freescale.com/ppc/sdk/linux.git \

  1. "

SRC_URI=file:///home/qoriq/linux-qoriq-sdk.tar.gz

SRC_URI[md5sum]="c11c7d4b463d038acb4dc658d5294513"

KSRC ?= ""

S = '${@base_conditional("KSRC", "", "${WORKDIR}/linux-qoriq-sdk",

"$

  1. make everything compatible for the time being
", d$ COMPATIBLE_MACHINE_$MACHINE = "$MACHINE" python () { ma = d.getVar("DISTRO_FEATURES", True) arch = d.getVar("OVERRIDES", True) SRC_URI[md5sum]="c11c7d4b463d038acb4dc658d5294513" KSRC ?= "" S = '${@base_conditional("KSRC", "", "${WORKDIR}/linux-qoriq-sdk", "$", d$

  1. make everything compatible for the time being

COMPATIBLE_MACHINE_$MACHINE = "$MACHINE"

python () {

ma = d.getVar("DISTRO_FEATURES", True)

arch = d.getVar("OVERRIDES", True)

  1. the : after the arch is to skip the message on 64b

if not "multiarch" in ma and ("e5500:" in arch or "e6500:" in arch):

raise bb.parse.SkipPackage("Building the kernel for this

arch r$

promote_kernel = d.getVar('BUILD_64BIT_KERNEL')

if promote_kernel == "1":

d.setVar('KERNEL_CC_append', ' -m64')

d.setVar('KERNEL_LD_append', ' -melf64ppc')

  1. the : after the arch is to skip the message on 64b

if not "multiarch" in ma and ("e5500:" in arch or "e6500:" in arch):

raise bb.parse.SkipPackage("Building the kernel for this

arch r$

promote_kernel = d.getVar('BUILD_64BIT_KERNEL')

if promote_kernel == "1":

d.setVar('KERNEL_CC_append', ' -m64')

d.setVar('KERNEL_LD_append', ' -melf64ppc')

error_qa = d.getVar('ERROR_QA', True)

if 'arch' in error_qa:

d.setVar('ERROR_QA', error_qa.replace(' arch', ''))

all_qa = d.getVar('ALL_QA', True)

if 'arch' in all_qa:

d.setVar('ALL_QA', all_qa.replace(' arch', ''))

}

0 Kudos
3,076 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello Aravind,

Please define SRC_URI as the following

SRC_URI = "file://linux-qoriq-sdk.tar.gz"

You also need to put the tar ball linux-qoriq-sdk.tar.gz in the folder meta-fsl-ppc/recipes-kernel/linux/files.


Have a great day,
Yiping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
3,076 Views
aravindganesan
Contributor I

Dear Yiping,

Really Thanks for your reply.

I am not getting parse error.

I also copied the .gz to /files.

I am getting error.

Please help.

Thanks,

Aravind

On Tue, Aug 26, 2014 at 1:27 PM, Yiping Wang <admin@community.freescale.com>

0 Kudos