I'm trying to compile this sample code with XCode 4.2b, here's how my project looks like:
Application type: Command Line Tool. When I'm trying to build the project, I get the following list of errors:
I suppose that I haven't added some frameworks to the project, though I don't know what frameworks should be added...
The imported files probably contain Objective C code, but you're using the C compiler.
Change the file extension of main.c to main.m.
Related
I'm compiling this PCL Library example. For reference, it consists of a simple cpp file that includes some PCL headers and does some basic data manipulation, and a CMakeLists.txt file.
Using the command line, I am able to build it using cmake -> make. I want to build it also using VSCode IDE. When I open this project on VSCode, it detects I'm using cmake, and if I clean/build it using the cmake extension, everything seems to work as expected (including autocompletion by intellisense, etc).
However, this takes some time as it builds the whole project in the same way you would do it from the command line, only from VSCode. I wanted to understand if I can also configure a "default build task" (via the tasks.json file) to build files using Ctrl + Shift + B, and be able to build individual files, and have a more IDE-Like experience (something like the incremental compiler of Eclipse with Java, for example).
If I add a C++ configuration, it fails to find .h files, and errors are highlighted on the open file, until I clean/rebuild via de cmake extension.
My question is, are this two options (cmake extension vs build tasks) compatible or mutually exclusive? Is defining and compiling via a task in fact more agile than building via the cmake extension?
Thanks!
I downloaded GLUI from https://github.com/libglui/glui, but I am not clear on how to get it to work on my Xcode. I read this step:
To include GLUI in your own apps, add the glui library to your makefile (before the glut library 'libglut.a'), and include "glui.h" in your sources.
Where would I find my makefile since I am using Xcode?
I was able to get #include to compile, but if I try GLUI *glui from the manual, I get "Unknown type name 'GLUI'". There is something on the front page: https://lukecyca.com/2008/glui-235-framework-for-mac-os-x.html where it mentions #include, but I don't know where I can get GLUI/glui.h.
After you build the lib, you'll have two directories lib and include which you have to move to your Xcode project. It'll look like this:
If Xcode does not see the includes nor links to the library, you'll have to add them to search paths (headers and libraries) like so:
NOTE: In order to use them in Obj-C you'll have to change file extension to .mm (obj-c++ file).
This is the first time I am trying to build something from the source codes. I was trying to make a console program out of WebRTC native code.
I followed official guide and checked out the source code.
As the guide says,
To generate IDE project files, pass the --ide flag to the GN command. See the GN reference for more details on the supported IDEs.
I used this command to generate Xcode project:
$ gn gen out/Default --ide=xcode
But the Xcode project generated does not compile. Xcode kept telling me it could not find those files.
Is it because I did not do ninja -C out/Default? I am confused — am I supposed to still compile the whole source codes using ninja while I have generated an Xcode project using gn?
am I supposed to still compile the whole source codes using ninja while I have generated an Xcode project using gn? => yes
See https://dev.chromium.org/developers/how-tos/debugging-on-os-x/building-with-ninja-debugging-with-xcode for further details on building with Ninja and debugging with Xcode.
My question is very naive. Every time I ran an algorithm, it's with an IDE so I don't know exactly what is generated in backgrown.
I try to run with my MacBook an algorithm that I didn't write and I'm blocked !
In the readme file: they said "Use cmake to generate desired projects on different platforms. (See “CM.txt” in the
“src” folder)"
In the CM.txt:
project(BlProj)
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
add_executable(BlProj
main.cpp
thi.cpp
thu.cpp
mat.cpp
Config.cpp
Stringer.cpp
)
I did: cmake CM.txt
A CM directory is generated. I will not list all the files inside: it's some cmake, bin, out, cpp, c, cxx, log, txt files.
I don't know what I can do with that!
I'm supposed to generate a compiled binary and run it with the command:
./BlProj data1 data2 10 config output
But it wasn't generated...
So I don't know how I can have the BlProj executable. Could you help me?
How do the cpp compilation work? What did cmake exactly?
Is cmake CM.txt is a good practice or not?
You can use cmake-gui to build sources.
go to CMAKE installation directory and inside bin folder run cmake-gui
Provide input where the source code is and provide an input where to build.
hit on configure and then generate.
you might need to select IDE version as well as provide additional input, it depends.
once done open generated project files with your IDE and build.
I am using TWR-K20D72M and I opened a Sample program which is given in the MQX 4.0.1 Demo examples. When I choose Build tool option as Freescale
the program compiles OK but When I choose Build tool option as GCC It gives me error.The Error is below
error
Description
mingw32-make: *** No rule to make target `C:/Freescale/Freescale_MQX_4_0/lib/twrk20d72m.cw10gcc/debug/bsp/intflash.ld', needed by `explicit-dependencies'.
I read somewhere that The GCC can only work with MQX 4.0.1 and above so I am using MQX 4.0.1 .
Can some suggest me the reason for this error.How I can I remove this error.......
Thanks
You are missing the linker script file for your project intflash.ld.
Normally this file is located on
{mqx_install_dir}\mqx\source\bsp\{your_bsp_name}\gcc_cw
and is copied to
{mqx_install_dir}\lib\{your_bsp_name}.cw10gcc\debug\bsp
and
{mqx_install_dir}\lib\{your_bsp_name}.cw10gcc\release\bsp
after the build process by the scripts for your bsp, located on
{mqx_install_dir}\mqx\build\bat.
Take a look inside your bsp script and verify that intflash.ld is being copied correctly.
My guess is that you compiled your MQX application before compiling the BSP and PSP. With the release of CodeWarrior 4.6, the solution has gotten a bit easier through the use of .wsd files.
If you look at the FSL_MQX_getting_started.pdf, section 2.4 describes how to find a .wsd file which needs to be dragged into your CodeWarrior Project Explorer. Once this is done new projects will be added to your workspace. Compile the bsp_... and psp_... and any other libs that you require (usb, ethernet etc) which will generate binaries and the intflash.ld file in the correct location.
http://cache.freescale.com/files/soft_dev_tools/doc/support_info/FSL_MQX_Getting_Started.pdf