Nios® II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
12435 Discussions

Loading image to SDRAM under ubuntu

Altera_Forum
Honored Contributor II
2,731 Views

Hi, 

 

 

I am trying to run uclinux on DE0-Nano, and i successfully generated the zImage, but iam unable to load the image into SDRAM, it showing error like 

 

alex@alex:~$ nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

 

/opt/nios2eds/bin/nios2-gdb-server-wrapped: error while loading shared libraries: libjtag_client.so: cannot open shared object file: no such file or directory

 

 

 

Where is the mistake? 

Thanks in advance.
0 Kudos
35 Replies
Altera_Forum
Honored Contributor II
221 Views

My guess is that you need to add the quartus library directory containing the required so files to the LD_LIBRARY_PATH variable. 

 

For Quartus v12.0 it should be located in <path-to-quartus>/12.0/quartus/linux64 where <path-to-quartus> depends on where you installed the software. 

 

Try this: 

 

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<path-to-quartus>/12.0/quartus/linux64; nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Thanks for ur reply sir,but i executed the nios2-download command its showing like this 

 

 

alex@alex:~$ nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

there is a problem with the quartus ii installation on your computer. 

please use `jtagconfig` for further diagnosis. 

 

 

 

Kindly any help? 

 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

Can you try executing that command as root? Just to check if it's a permission issue. 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Thanks you sir, tried as root but....... 

 

 

alex@alex:~$ sudo nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

[sudo] password for alex: ***** 

sudo: nios2-download: command not found 

 

alex@alex:~$ gksudo nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

here it doesnt show any error but no output,just it return to command prompt 

 

alex@alex:~$ gksudo ./nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

here also it doesnt show any error but no output,just it return to command prompt 

 

 

Else i have to check like this or any other method? 

 

Where is the mistake? 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

Sir, 

 

 

 

For suppose if i got error like this (As mentioned below) 

 

there is a problem with the quartus ii installation on your computer. 

please use `jtagconfig` for further diagnosis 

 

I came to know, i have to kill jtagd as mentioned below 

 

$ sudo killall jtagd 

$ sudo /opt/quartus/bin/jtagconfig -n 

 

 

Is it true? 

what i have to do? 

Kindly any help?
Altera_Forum
Honored Contributor II
221 Views

Try the following command to see if it resolves the jtag issue for normal users: 

 

echo 'ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="666"' | sudo tee -a /lib/udev/rules.d/51-usbblaster.rules 

 

Reboot your machine just to make sure it takes effect. 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Thanks for giving replies 

 

still iam strucking there only 

 

Sir, once i close and again i open my terminal,  

if i type donload command 

 

1.alex@alex:~$ nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

 

/opt/nios2eds/bin/nios2-gdb-server-wrapped: error while loading shared libraries: libjtag_client.so: cannot open shared object file: no such file or directory 

 

then i typed  

 

2.alex@alex:~$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/quartus/linux and press enter 

alex@alex:~$  

 

3.alex@alex:~$ nios2-download -g ~/uClinux/distro/nios2-linux/uClinux-dist/images/zImage 

there is a problem with the quartus ii installation on your computer. 

please use `jtagconfig` for further diagnosis. 

i added the your line as u mentioned in the previous post 

And finally in my 51-usbblaster rules file is like this 

 

#usb-blaster 

bus=="usb", sysfs{idvendor}=="09fb", sysfs{idproduct}=="6001", mode="0666" 

bus=="usb", sysfs{idvendor}=="09fb", sysfs{idproduct}=="6002", mode="0666" 

bus=="usb", sysfs{idvendor}=="09fb", sysfs{idproduct}=="6003", mode="0666" 

echo 'attr{idvendor}=="09fb", attr{idproduct}=="6001", mode="666"' 

 

Y , once i close my terminal ,again i will open na no library path. 

I have to fix this problem, kindly any help? 

Where is the mistake? 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

The last command I gave you was supposed to be executed only once. 

In the archive attached to this post are two files: 

 

altera.conf -> put this one in /etc/ld.so.conf.d (this way you don't have to export the library path every time) 

51-usbblaster.rules -> put this one in /lib/udev/rules.d 

 

Reboot your machine and try again. 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Sir, 

 

My usb blaster rules it is in /etc/udev/rules.d/51-usbblaster.rules,can i delete this one, imean as showed in my previous post 

 

According to you , i have to place /lib/udev/rules.d, in my path(/etc/udev/rules.d/51--usbblaster.rules) this file can i delete or what? 

 

 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

Yes, you can overwrite the /lib/udev/rules.d/51-usbblaster.rules you created previously with the 51-usbblaster.rules in the zip file. 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Also remember to put the quartus bin directory in your .bashrc file 

 

alex@alex:~$ gedit ~/.bashrc & 

 

and add the following line to the bottom of the file 

 

export PATH=$PATH:/opt/quartus/bin 

 

Then log out and log back in. 

 

N.
Altera_Forum
Honored Contributor II
221 Views

I tried all the steps , as u mentioned in your previous post, but same problem, where is the mistake? 

 

error 

 

there is a problem with the quartus ii installation on your computer. 

please use `jtagconfig` for further diagnosis. 

 

else cont we download the image into SDRAM under ubuntu? 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

Sir, 

 

If i open my bashrc file its showing error like this, previosuly i opend ,but at that time i dint get any error, but now.... 

 

 

 

alex@alex:~$ gedit ~/.bashrc 

 

/opt/quartus/linux/libstdc++.so.6: version `glibcxx_3.4.11' not found (required by /usr/lib/i386-linux-gnu/libproxy.so.1) 

failed to load module: /usr/lib/i386-linux-gnu/gio/modules/libgiolibproxy.so 

 

** (gedit:2404): warning **: error loading plugin: /opt/quartus/linux/libstdc++.so.6: version `glibcxx_3.4.15' not found (required by /usr/lib/libaspell.so.15) 

 

 

** (gedit:2404): warning **: error loading plugin: /opt/quartus/linux/libstdc++.so.6: version `glibcxx_3.4.15' not found (required by /usr/lib/libaspell.so.15) 

 

 

 

 

 

 

finally my bashrc file is  

# ~/.bashrc: executed by bash(1) for non-login shells.# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)# for examples 

# If not running interactively, don't do anything 

[ -z "$PS1" ] && return 

# don't put duplicate lines or lines starting with space in the history.# See bash(1) for more options 

HISTCONTROL=ignoreboth 

# append to the history file, don't overwrite it 

shopt -s histappend 

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) 

HISTSIZE=1000 

HISTFILESIZE=2000 

# check the window size after each command and, if necessary,# update the values of LINES and COLUMNS. 

shopt -s checkwinsize 

# If set, the pattern "**" used in a pathname expansion context will# match all files and zero or more directories and subdirectories.# shopt -s globstar 

# make less more friendly for non-text input files, see lesspipe(1) 

[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" 

# set variable identifying the chroot you work in (used in the prompt below) 

if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then 

debian_chroot=$(cat /etc/debian_chroot) 

fi 

# set a fancy prompt (non-color, unless we know we "want" color) 

case "$TERM" in 

xterm-color) color_prompt=yes;; 

esac 

# uncomment for a colored prompt, if the terminal has the capability; turned# off by default to not distract the user: the focus in a terminal window# should be on the output of commands, not on the prompt# force_color_prompt=yes 

 

if [ -n "$force_color_prompt" ]; then 

if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then 

# We have color support; assume it's compliant with Ecma-48 

# (ISO/IEC-6429). (Lack of such support is extremely rare, and such 

# a case would tend to support setf rather than setaf.) 

color_prompt=yes 

else 

color_prompt= 

fi 

fi 

 

if [ "$color_prompt" = yes ]; then 

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' 

else 

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$

fi 

unset color_prompt force_color_prompt 

# If this is an xterm set the title to user@host:dir 

case "$TERM" in 

xterm*|rxvt*) 

PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" 

;; 

*) 

;; 

esac 

# enable color support of ls and also add handy aliases 

if [ -x /usr/bin/dircolors ]; then 

test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" 

alias ls='ls --color=auto' 

# alias dir='dir --color=auto' 

# alias vdir='vdir --color=auto' 

 

alias grep='grep --color=auto' 

alias fgrep='fgrep --color=auto' 

alias egrep='egrep --color=auto' 

fi 

# some more ls aliases 

alias ll='ls -alF' 

alias la='ls -A' 

alias l='ls -CF' 

# Add an "alert" alias for long running commands. Use like so:# sleep 10; alert 

alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' 

# Alias definitions.# You may want to put all your additions into a separate file like# ~/.bash_aliases, instead of adding them here directly.# See /usr/share/doc/bash-doc/examples in the bash-doc package. 

 

if [ -f ~/.bash_aliases ]; then 

. ~/.bash_aliases 

fi 

# enable programmable completion features (you don't need to enable# this, if it's already enabled in /etc/bash.bashrc and /etc/profile# sources /etc/bash.bashrc). 

if [ -f /etc/bash_completion ] && ! shopt -oq posix; then 

. /etc/bash_completion 

 

 

fi# Nios II Toolchain 

export PATH=$PATH:~/uClinux/Tools/opt/nios2/bin 

 

 

export PATH=$PATH:/opt/quartus/bin 

export PATH=$PATH:/opt/nios2eds/bin 

export PATH=$PATH:/opt/sopc_builder/bin 

export PATH=$PATH:/opt/nios2eds/bin/gnu/H-i686-pc-linux-gnu/bin 

 

export PATH=$PATH:/opt/quartus/bin 

 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

Are you running an old version of quartus? Perhaps you're better of reinstalling v12.0 of Quartus II? 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Iam using quartus 11.1 service pack, is it ok?, otherwise i have to reinstall quartus with 12v? and one more thing i have downloaded nios2-linux-20090929.tar under windows, is any problem ? 

 

 

 

 

Thanks, 

Alex.
Altera_Forum
Honored Contributor II
221 Views

Please do the following: 

 

1. Open up a terminal and type "jtagconfig" followed by enter. What does it say? 

 

2. Install libstdc++6 using the command "sudo apt-get install libstdc++6" 

 

N.
Altera_Forum
Honored Contributor II
221 Views

alex@alex:~$ jtagconfig 

1) USB-Blaster variant [7-1] 

Unable to lock chain (Insufficient port permissions) 

 

and i installed the libstdc++6 also, and i am using ubuntu12.04 

 

 

 

 

Thanks, 

alex.
Altera_Forum
Honored Contributor II
221 Views

That's exactly the kind of problem the /lib/udev/rules.d/51-usbblaster.rules file is supposed to fix. 

 

Connect your altera device to the usb port and execute "lsusb" in a terminal. The output should contain a line like this: 

Bus 003 Device 002: ID 09fb:6001 Altera Blaster 

 

N.
Altera_Forum
Honored Contributor II
221 Views

Ya, the output is like . 

 

alex@alex:~$ lsusb 

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub 

Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub 

Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub 

Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub 

Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub 

Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub 

Bus 001 Device 002: ID 1210:25f4 DigiTech  

Bus 006 Device 002: ID 15d9:0a4c Trust International B.V. USB+PS/2 Optical Mouse 

Bus 007 Device 004: ID 09fb:6001 Altera Blaster 

 

 

then how to fix the problem?
Altera_Forum
Honored Contributor II
127 Views

Are you sure you installed the rules file correctly? 

 

Type in "cat /lib/udev/rules.d/51-usbblaster.rules" at the command prompt. It should say: 

ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="666" 

 

You did reboot your machine, right? 

 

N.
Reply