From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

can't install compile tools on cRIO 9034

Solved!
Go to solution

I can't seem to be able to install the compilation tools on my cRIO 9034 in order to compile ATLAS on it.

 

I use the command:

opkg update && opkg install packagegroup-core-buildessential git

and i get the output

Package packagegroup-core-buildessential (1.0-r0.60) installed in root is up to date.
Package git (2.0.1-r0.10) installed in root is up to date.

still, when I run the ./configure command

i get

 

admin@FPRSSTESTER:/home/lvuser/ATLAS/Linux_cRIOx64# ../configure -b 64 --prefix=home/lvuser/lib/atlas --with-netlib-lapack-tarfile=/home/lvuser/dload/lapack-3.6.1.tgz
gcc -I/home/lvuser/ATLAS/Linux_cRIOx64/..//CONFIG/include  -g -w -o xconfig /home/lvuser/ATLAS/Linux_cRIOx64/..//CONFIG/src/config.c atlconf_misc.o
/usr/lib/gcc/x86_64-nilrt-linux/4.8.2/../../../../x86_64-nilrt-linux/bin/ld: cannot find crtbegin.o: No such file or directory
/usr/lib/gcc/x86_64-nilrt-linux/4.8.2/../../../../x86_64-nilrt-linux/bin/ld: cannot find -lgcc
/usr/lib/gcc/x86_64-nilrt-linux/4.8.2/../../../../x86_64-nilrt-linux/bin/ld: cannot find -lgcc_s
/tmp/ccsak4ps.o: In function `ATL_tmpnam':
/home/lvuser/ATLAS/Linux_cRIOx64/..//CONFIG/include/atlas_sys.h:224: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
collect2: error: ld returned 1 exit status
Makefile:34: recipe for target 'xconfig' failed
make: *** [xconfig] Error 1
./xconfig -d s /home/lvuser/ATLAS/Linux_cRIOx64/../ -d b /home/lvuser/ATLAS/Linux_cRIOx64  -b 64 -Si lapackref 1
/bin/sh: line 1: ./xconfig: No such file or directory
xconfig exited with 127

also, the first time I used the 

opkg install packagegroup-core-buildessential

 command, it failed. No special error description.

 

The Software on the cRIO is

 

NI Linux Real-Time x64 3.14.46-rt46-3.5.0f0

Firmware 3.5.0f0

Software NI CompactRIO15.5 - February 2016

 

Note: As I can't connect to the internet with the cRIO, I cloned the NI repository and set the opkg path to load from a usb drive.

any ideas?

 Robert

0 Kudos
Message 1 of 4
(3,920 Views)

If the cRIO cannot connect to the internet, you don't need to run opkg update (since this command will simply update the list of installable packages from the configured feed server).

 

When installing software offline like what you're attempting, you need to point opkg directly to the package that you're installing.

 

For example, trying to install a package foo.ipk, you would download the file to a USB storage device and plug this into your cRIO (or otherwise make it available to the cRIO) and run the command opkg install /path/to/foo.ipk. This command may likely indicate that there are missing dependencies that are required for successful installion of foo.ipk, which you will need to download and install first prior to installing foo.ipk.

 

I can tell you in no uncertain terms that packagegroup-core-buildessential will require additional packages to be installed as it is a so-called meta-package: simply a collection of needed packages.

0 Kudos
Message 2 of 4
(3,893 Views)
Solution
Accepted by topic author tusrob

I managed to correctly install the packagegroup-core-buildessential by wiping the cRIO, reinstalling the NI CompactRIO 15.5 - February 2016, changing the path to the repository to the local ones and running the installation command again. This time it seemed to have worked with no problems. Couldn't tell you why as I did the exact same steps before wiping the cRIO.

 

Correct me if I'm wrong, but doing opkg update only updated the links to the available packages in the repository. As I have changed my paths to

src/gz url-0 file:///media/sdc1/2015sp1_repo
src/gz uri-all-0 file:///media/sdc1/2015sp1_repo/all
src/gz uri-core2-64-0 file:///media/sdc1/2015sp1_repo/core2-64
src/gz uri-x64-0 file:///media/sdc1/2015sp1_repo/x64

in /etc/opkg/base-feeds.conf i guess I did it to make sure that the install command wgets the package from the right place. I didn't try installing it without the update command though, so I'm not really sure.

 

Anyway, It seems to be working right now.

0 Kudos
Message 3 of 4
(3,887 Views)

Ah, I did not realize you were making (at least a portion of) the repo available locally via removable storage. In that case, it makes sense to run opkg update. It will not update any links, but rather digest the listing of packages in the new feeds (on the removable storage) to update the listing of installable packages.

0 Kudos
Message 4 of 4
(3,874 Views)