I want to build my CocoaPods libraries into single library (or even multiple will also be OK) in order to:
Freeze pod libraries versions
Reduce build server build time (building libraries takes a lot of time)
Is there a way to build CocoaPods libraries into 1 or several static libraries and link them to my project?
Related
I'm attempting to utilize the "Project References" feature in Eclipse for an embedded firmware project. I'm using Code Composer Studio 7.0 which is essentially just a wrapper for Eclipse 4.6 with CDT 9.0 and JRE 8. However, from what I can tell the features I'm trying to use are specific to the CDT. The embedded firmware is broken up into several parts with a few libraries, an RTOS platform, and the "core" firmware.
The intention is that the dependencies of a project are automatically built and updated in the proper order whenever a build on the core firmware project is triggered. However, due to some libraries building upon others I'm seeing some weird behavior that i don't quite understand. The dependency graph is shown below.
As you can see, there's a maximum of four levels of dependency. The issue that I'm seeing is that, while I've ordered the references in the order "Properties->C/C++ General->Paths and Symbols->References" as [Platform, PAL, HAL, Features] for the firmware project, the build order doesn't seem to follow that specification. The ordering seems to be semi-random. After a clean sometimes the PAL will build first, other times the Features will. The entire build ultimately fails when this happens due to dependencies not being accessible. Is there an additional step I'm missing to get dependencies to build in the correct order, or are nested dependencies not supported by Eclipse for some reason?
I have some specific libraries used for building embedded code. But every time I create a a cdt project in eclipse, I have to add this libraries to the project. I know one can create a library project and then create a dependency to this from the main application. But what I ant quite figure out here is the toolchain setting propagation.
When I create a project in eclipse, I am forced to define the toolchain to use for building. What I want is not to define a toolchain for the library project, but let eclipse use the defined toolchain for the main project referencing the library to build the library.
Sometimes, a library is built for AVR, sometimes for ARM, sometimes for PC. Each of this requires a different compiler. But once I specify a compiler for the library, this compiler is always being used to build even if that is not the required one at the time the library is been compiled.
I hope my question is clear? Thanks for your anticipated help.
I'm developing an Eclipse RCP application. The application should run on Windows and Linux.
There are several plugins in this application that contain native artifacts. To contain these artifacts in a binary build (jar), one should specify them in build.properties file.
Currently I include both Linux and Windows native artifacts in build.properties and then in runtime I choose which one to load. However, I don't like this approach as it causes unnecessary files to present in both Linux and Windows builds.
Is there a way to specify target platform in build.properties? So that for Linux build it would include Linux artifacts and for Windows build it would include Windows artifacts?
Alternatively, is there a way to maintain two copies of build.properties - one for Linux build and second for Windows build?
The usual way to do this is to have separate plugins (or plugin fragments) for each platform with a platform filter which restricts when the plugin is available:
For example, in the MANIFEST.MF
Eclipse-PlatformFilter: (& (osgi.ws=cocoa) (osgi.os=macosx) (osgi.arch=x86_64) )
restricts the plugin to only Mac OS X 64 bit, Cocoa.
This is what SWT does. There is a base org.eclipse.swt plugin which doesn't contain any code and then multiple plugin fragments extending that plugin (such as org.eclipse.swt.cocoa.macosx.x86_64). Each fragment contains the SWT code for a platform, all implementing the same classes.
Eclipse only loads the plugin for the current platform so you don't have to do any work choosing what to use.
Good morning guys,
what I am considering about is to build a standard process of installing a library in a java project in eclipse. I am a niewbie software developer so a prior sorry if this question is a bit stupid.
All what I want to do is to use the junit library. I have followed these septs.
I installed the junit-4.12.jar file from the web.
Inside the project folder I created a new file and I named it "lib".
I put in this folder thae jar file and then in eclipse I click
on project folder -> properties -> Java build path and I click on libraries and add jars. (not external jars).
Is that process ok?
your process isn't good because it doesn't scale: imagine you want to install 40 libraries in your project. and then imaging your team has 5 developers and each of them has to do the same. and what about CI server that must be automatic
in fact your problem was solved years ago and the solution is called 'dependency management tool'. those tools are usually built into something more powerful called 'build tool'. maven or gradle are examples of such tools. you just provide list of your dependencies (like junit) and that program automatically downloads them and build your project. and it's sufficient as long as your project is more less 'typical'
i don't remember if eclipse has build in support for maven (one of the oldest and most common). if not, just install the eclipse plugin and you're ready to go
I'm using Eclipse Luna 4.4.2 and installed the Ivy plugin and Vaadin plugin from the market place as instructed by their book, but I'm unable to create a project since every time I try to I get the message:
Failed to list downloaded Vaadin versions
From what I'm reading around, Vaadin uses Ivy for managing the download of their packages but it seems to be blocked by my company's firewall.
Since the available versions cannot be downloaded, the combobox for selecting the version comes empty, stopping the process to create the project.
Is there a way to download the Vaadin version I need separately? Are there any options for me in my situation?
You can go to the Vaadin download page and select the Download as .zip option on the left of the page as in the image below. Please note that only the visual editor plugin is IDE dependent, while Vaadin as a framework can be used regardless of the IDE (you could write your code in notepad and compile it with the jars in the classpath), so there's no such thing as Vaadin versions for Eclipse.
On a sidenote you can also use maven to manage your dependencies and build process besides ivy. If you plan on using other frameworks or other Vaadin addons it may prove difficult to manage all these dependencies manually, so depending on your company's policies and configuration I'd ask whether they can grant access to the repositories or if at least there is an internal repository where one can add/find the necessary dependencies.