Building NaCl SDK from source for ARM-32 - google-nativeclient

I am trying to build Native Client SDK from source code following instructions on: www.chromium.org/nativeclient/how-tos/building-and-testing-gcc-and-gnu-binutils. After I run make clean build-with-newlib -j16, I get errors. When I saw the contents of Makefile, I realized that CROSS_ARCH was set to x86_64. Changing it to arm32 threw different kind of errors. What are the settings to generate binaries for ARM platform?

Related

Unable to run qt-creator executable outside ide compiled in release mode

After switch to release mode to build a small project I have, when I try run it from inside the qt-creator ide, all goes fine. But when I go to the folder build-<project_name>-Desktop_Qt_5_14_1_MinGW_64_bit- Release and try run the executable generated in this directory, I got this error:
Anyone knows what the problem here? If it was some missing dll, I supose it will specify what dll was missing, right? Or I am mistaken?
update
After run windeployqt, this command found dependencies for my application, create some folders, but now I am getting tis error when try to run it:
update 2
after run the utilitary dependency walker, i got this errors on it:
I am using this build kit to build the project in qt-creator:
Here is all I know about Qt deployment & issues on Windows.
Check whether Release configuration of your project doesn't contain links to any debug versions of libraries.
Build your app in Release mode. Use Rebuild, If in doubt. See compile output window in the IDE, what paths it actually uses.
Use windeployqt tool to automatically copy all the necessary Qt dlls to the executable's folder. Be sure you are using windeployqt.exe from the correct folder. For example, currently I have one version of Qt framework, but two versions of windeployqt: for x86 and x64 compilers. In the case you have more than one version of Qt installed, you may have several versions of the tool.
.
C:\Qt\Qt5.14.1\5.14.1\msvc2017\bin\windeployqt.exe
C:\Qt\Qt5.14.1\5.14.1\msvc2017_64\bin\windeployqt.exe
Copy compiler libraries to the release folder. Make sure that you're copying libraries from the exact compiler you used to build.
Copy all necessary additional 3-rd party dynamic libraries. Make sure it is not debug versions.
If the problem persists, press Ctrl+C when the error message is active. It will copy all the text from the message box. Paste main part of the message to Google.
If the problem persists, open your .exe file in some dll-dependency viewer. Here is how I can see this in Lister. Be note that such a tool will show you not only missing dlls, but also a full path for each dll that your executable actually use. More power tool is Dependency Walker.
Make sure your application doesn't try to write something to a system protected folder, such as c:\Program Files\, without corresponding privileges.
If the problem still persists, simplify your project as much as possible. Run Release for an empty project. Than add modules, functionality and libraries step-by-step.
If everything is okay, test the application on a completely clean virtual machine.
Edit. I google your error text and what I found:
https://stackoverflow.com/a/52127944/
The problem was that windeployqt was unable to locate gcc for some
reason. I added it to my path from cmd with SET
PATH=%PATH%;C:\Qt\Tools\mingw530_32\bin. After I ran windeployqt
again, I did not have to copy libgcc_s_dw2-1.dll and
libwinpthread-1.dll over manually and it used the correct Qt5Core.dll,
since the application is now working fine.

How to make CC3200 project with Kaa SDK?

I'm using Ubuntu 16.10. Installed Kaa Sandbox and tested with notification demo in terminal. I'm using CCSv7 to program on CC3200. I confused what is correct way to create project in CCS with Kaa SDK generate from Kaa Sandbox. Here is how I do but I can't build project:
Generate SDK and run build by cmake with target platform is cc32xx, I use notification example
Create new project then include Kaa SDK path
Include Kaa file library (*.a): libkaac.a, libextension_user.a, libextension_event.a, libextension_logging.a, libextension_profile.a, libextension_bootstrap.a, libextension_notification.a, libextension_configuration.a, libmbedtls.a, librsa_keygen.a. I'm not sure that need all of them but just include all to prevent error.
Copy some code from kaa_demo.c and blinky demo project to my main.c.
Hit build. Error occur that libmbedtls.a not build for ARM so I go to folder thirdparty and build it. Solved.
Occur another error: Description Resource Path Location Type
#10099-D program will not fit into available memory. placement with alignment fails for section ".cinit" size 0xc41 . Available memory ranges: cc3200v1p32.cmd /demo1 line 75 C/C++ Problem. I try to increase or decrease stack size but not work.
More error: Description Resource Path Location Type
unresolved symbol __assert_func, first referenced in /opt/ti/kaa-sdk/build/libkaac.a demo1 C/C++ Problem. This error occur when missing include library file but it occur in another library file so I dont know how to fix.
Anyone can help me or suggest how to make a project for CC3200 with Kaa SDK, in any IDE. Its take me 2 weeks.
At the moment of Kaa 0.10.0 release the CC32xx sample applications were broken due to the same issue you mentioned in 7). The binary build did not fit into the CC32xx program memory. That is why whole the CC32xx platform was disabled in the Kaa 0.10.0 Sandbox release.
Now, the issue on the GitHub repository is fixed and the CC32xx platform will be re-enabled in the Kaa 0.10.1 Sandbox release (comming soon). So, you can either wait for the Kaa 0.10.1 release or try building the CC32xx application with the CMake from GitHub.
Regarding your question for build from CCSv7 IDE directly you should search for integration of CMake builds into the CCSv7 IDE. Kaa team does not provide such integration for now considering you should use any IDE you prefer for development and build by CMake (manually or from IDE).

vs2010 cannot build NaCl example code on NaCl64 platform, but can bulid on PPAPI platform

When I build and run NaCl example code on PPAPI platform, it will be ok. But when I change the platform from PPAPI to NaCl64, vs2010 shows that it cannot find C++ standard library(eg. Error:cannot open source file “string.h”). Additionally, l have install the vs_addin plugin in the vs2010. I guess the configuration has some problem, maybe the library has not been included. But I used default configuration and have done nothing to it, I only follow the steps given in google chrome development tutorial.

postMessage not declared in this scope error when building nativeClient plugin

When I am trying to build the plugin module using .\scons it is raising me errors. What might cause these types of errors...? Error is
postMessage() was not declared in this scope.
I am using pepper_16 version. Here is the procee I did
Installed Python and gave the path required(Installed in D drive as I do not have privileges).
Downloaded nacl_sdk.zip extracted in the same folder where I have installed python and updated the tools with nacl_sdk.bat update
Enabled NativeClient form about:flags window and executed the server using httpd.py file.
And created project in Pepper_16/examples/TestApp using init_project.
Written the code as it is in the Getting started tutorial to test.
Then using ./scons in the same project folder in cmd mode I have tried to build
The above process worked fine for me where I have admin privileges. But the same procedure and same code not working where I do not have admin privileges.
Please let me know if any further details are required.
which source file was being compiled? a lengthier cut-n-paste of the output around the error message would help to give context.
also, when you say the plugin module, are you referring to NaCl itself or your own PPAPI plugin? normally NaCl's plugin is built into Chromium using gyp, and while scons can be used to build the NaCl plugin it is typically only used for testing, via the --register-pepper-plugin command line argument to chrome.

How is FlexBuilder compiling my app?

I'd like to see the command-line arguments that FlexBuilder is using to compile my application. This is so that I can build them into the ANT script I'm working on. Is there any way to view the command line compilation step?
The reason I'm asking for this is that when I compile my app using Ant/Flex SDK vs. FlexBuilder my app behaves differently.
So I figured out the answer.
First of all, you can get a better idea of how FlexBuilder compiles your app by adding a -dump-config=C:\myConfig.xml to the compile arguments in FlexBuilder. This outputs an xml file containing configuration settings used in the compilation step. You can also use this file as an argument to compc or mxmlc if you'd like. Read more about it
here...
But, here's what actually solved my problem. I was using the regular old Flex SDK installed on our integration server to compile my apps using Ant. This is the free SDK you can download from Adobe's site. I then took the FlexBuilder directory from my local machine and copied it up to the integration server and pointed my build script to use that version of the SDK (and changed my path env variable).
When I compiled using the FlexBuilder version of the SDK, all was well and the strange bugs I was seeing in my app disappeared.
Moral of the story, make sure you are using the same version of the SDK for your automated builds as you use to build locally.

Resources