Xavier NX production module: internal compiler error segmentation fault

Hi,

I have bought a Jetson Xavier NX. Unfortunately, it’s not a devkit but a production module that I use with a waveshare carrier board. The module comes with a 16GB emmc. This is barely sufficient to even flash new jetpacks if one wants OS+SDK components. Therefore, I decided to use a 128GB sd-card that I plug onto the carrier board via a USB adaptor, since there is no SD-card slot on the module itself. My problem is that when I try to flash 4.5.1, 4.6.0, 4.6.1 and 4.6.2 jetpacks via the SDKM, when I select the USB option, as expected, it first flashes the emmc, it then copies all the essential root files onto the sd-card and the Jetson does boot from the sd-card. However, the GCC compiler (gcc-7) seems to get corrupted during the transfer. The way I realized it was when I was trying to build openCV with cuda enabled from source. I then tried to compile a simple hello-world.c script and I got the error “internal compiler error, segmentation fault”. No matter what I tried, among others “sudo apt install --reinstall gcc-7”, “sudo apt install --reinstall build-essential”, the problem persisted. The g++ -7 compiler works perfectly fine on the other hand. Building openCV with gcc/g++ -8 was successful but I got different errors when my python code was actually exploiting cuDNN which were cross-compiled with gcc-7 via the SDKM. I thought there would be backwards compatibility, so I don’t know what’s wrong here. Furthermore, I also tried to install gcc-7 within a virtual environment of anaconda, but unfortunately there is no channel containing gcc-7. Jetpack 5.0.1 doesn’t have that problem with the GCC compiler but it has issues with the GPIOs that I am intending to use. It’s impossible to even toggle them. I had read that these issues would be fixed with the new release but when flashing my NX with Jetpack 5.0.2, it is left hanging after installing the OS and it never boots. Probably some issue when transferring the root files from the emmc to the USB-sd-card.

Long story short, I have tried all kind of combinations and I haven’t managed to make everything work. By everything here I mean, install OS+SDK components on the USB-sd-card and successfully boot from it, build openCV with cuda enabled, and manage to toggle the GPIO pins via Jetson.GPIO.

Has anyone faced the aforementioned issues? If so, please enlighten me. I’m in the dark here guys. Please shed some light. Somebody jinxed me big time.

I look forward to someone’s response.

Sorry that could you try to just list out the point you want to say?

The situation seems a little weird with all the things here.

For example, are you asking a boot issue or you are asking the build issue with openCV?

Please do not put your whole story altogether. Just list out what is your first issue, 2nd issue… etc.

Hi,

Find the main issues listed below:

  1. jetpack 4.x: SDKM installs the OS on my USB-sd-card. The NX boots successfully from the USB-sd-card but the GCC compiler is broken. I get the error “internal compiler error, segmentation fault”. Something is messed up during the transfer of the root files from the emmc to the USB-sd-card. As a result I cannot build any library (e.g.: openCV) from source. If I install the OS on the emmc the problem with the GCC compiler does not exist. But I need to boot from my USB-sd-card in order to fit the SDK components

  2. jetpack 5.0.1: SDKM installs successfully the OS and the SDK components on the USB-sd-card without any GCC compiler issues. However, I cannot toggle the GPIOs. I’ve read in some threads that there was an issue that was going to be fixed in next releases.

  3. jetpack 5.0.2: SDKM installs the OS on the USB-sd-card but something fishy is happening and it’s left hanging without being able to boot, no matter how many times I turned it off and on.

Therefore, there is no jetpack that has none of the aforementioned issues.

Hi,

For jetpack4, could you share me the boot up log and include your gcc failure?
Also, are you saying that you also installed gcc by yourself?

Thanks for your reply Wayne. Just so you know this only happens when installing the OS on the usb-sd-card for jetpack 5.0.2. I will come back with an answer to your questions by Tuesday. In the meanwhile, could you please explain me how am I supposed to share the boot up logs when the device is actually hanging without booting up?

If this is nv devkit, you need to usb-ttl cable to dump log.

It’s not devkit. It’s the production module sitting on waveshare’s carrier board. Does your suggestion hold for the production module as well?

The problem is not “whether it is production module or not”. The problem is on the carrier board.

For example, even if you put that production module to devkit, then you can still follow my suggestion to dump boot log.
However, we don’t know if the 3rdparty carrier board has those pins left for you to dump log. Thus, you should check their board datasheet first.

Ok then. I’ll check it and get back to you asap. I also have a spare devkit board from a Jetson nano so I could make use of that to get the logs you are suggesting. I guess it will work.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.