How do I let target image includes qmake in Yocto? - qt

I'd like to add qmake tool to target image with yocto.
So, I've tried below.
# build/conf/local.conf
EXTRA_IMAGE_FEATURES += "dev-pkgs"
EXTRA_IMAGE_FEATURES += "tools-sdk"
EXTRA_IMAGE_FEATURES += "petalinux-qt"
EXTRA_IMAGE_FEATURES += "petalinux-qt-extended"
IMAGE_INSTALL_append = " qttools qttools-dev qttools-tools "
IMAGE_INSTALL_append = " packagegroup-qt5-toolchain-target "
As a result, it installed Qt libraries not qmake.
Please, let me know how to do...
I found it as below!
IMAGE_INSTALL_append = " qtbase-dev qtbase-mkspecs qtbase-tools "

I found it as below!
IMAGE_INSTALL_append = " qtbase-dev qtbase-mkspecs qtbase-tools "

Related

Copy files to output directory QT

I'm currently struggling to get a sub folder of my project to copy to the out directory. I had thought i had it all set up correctly but i guess i'm missing a step. When I run the make i get a "No rule to make target 'copyfiles'" message.
I know I could just make a new build step with a OS specific method, but i was hoping to avoid it cause I would like to build and run on a different OS eventually.
Edit:
Yes this question has been asked before. However the solutions given in those questions have not worked for me. They throw errors or simply do nothing.
CONFIG(release, debug|release): DESTDIR = $$OUT_PWD/release
CONFIG(debug, debug|release): DESTDIR = $$OUT_PWD/debug
copytarget.path = $$DESTDIR/etc
copytarget.files += $$files(etc/*)
## === os specific dir separator ===
win32 {
copytarget.files ~= s,/,\\,g
copytarget.path ~= s,/,\\,g
}
message("found files for copytarget: "$$copytarget.files)
message("found files destination: "$$copytarget.path)
## === copy compiler for makefile ===
DirSep = /
win32: DirSep = \\
for(f,copytarget.files) tmp += $$PWD$$DirSep$${f} ## make absolute paths
copycompiler.input = tmp
isEmpty(DESTDIR):DESTDIR=.
copycompiler.output = $$DESTDIR$$DirSep${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
copycompiler.commands = $(COPY_FILE) ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
copycompiler.CONFIG = no_link no_clean
## other CONFIG options are: depends explicit_dependencies target_predeps
copycompiler.variable_out = QMAKE_DISTCLEAN
QMAKE_EXTRA_COMPILERS += copycompiler
## == makefile copy target ===
copyfiles.recurse_target = compiler_copycompiler_make_all
copyfiles.depends = $$copyfiles.recurse_target
copyfiles.CONFIG += recursive
MAKE_EXTRA_TARGETS += copyfiles
POST_TARGETDEPS += copyfiles ## copy files after source compilation
INSTALLS += copytarget

How do I include muparser library in my Qt project?

I made a muparser.pri which had the following content,
macx|win32|equals(build_muparser, "true")|!packagesExist(muparser){
message("Using bundled muparser")
MUPARSER_DIR = src/rel/muparser
DEPENDPATH += $$MUPARSER_DIR/include \
$$MUPARSER_DIR/src
INCLUDEPATH += $$MUPARSER_DIR/include
GEN_LIB_DIR = ../../generated/lib
LIBS += -L$$GEN_LIB_DIR -lmuparser
PRE_TARGETDEPS += $$GEN_LIB_DIR/libmuparser.a
}else{
message("Using external muparser")
CONFIG += link_pkgconfig
PKGCONFIG += muparser
}
I, then, added a
include(./muparser.pri)
in my application's make file.
This gave me an error
":-1: error: No rule to make target '../../generated/lib/libmuparser.a', needed by 'debug/Akaar1.exe'. Stop."
What did I do wrong? How else am I supposed to include this library in my project?
In your .pro file you can do:
LIBS += -L*path to the library* -l*library name: foo for libfoo.a*

Qwt framework not found

Good Morning,
I am currently trying to build a project in QT that uses the Qwt library. However, when I try to build the project I get
warning: directory not found for option '-F/usr/local/qwt-6.1.0/lib'
error:framework not found qwt
error:linker command failed with exit code 1
I have followed the steps in this post as well as this post but it still cannot find the framework
I am using Xcode 6, Qwt 6, QT 5.3, and Mac OSX 10.9.
My .pro file's relevant code is as follows:
#mac: QMAKE_MAC_SDK.macosx.path = Applications/Xcode.app/Contents/Developer/Patforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
#mac: QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9 #Added to help build QWT
#INCLUDEPATH += /usr/local/qwt-6.1.0/qwt.prf
include (/usr/local/qwt-6.1.0/qwt.prf )
#CONFIG += qwt
#macx:QMAKE_MAC_SDK += macosx10.9
QMAKEFEATURES += /usr/local/qwt-6.1.0/features
CONFIG += qwt
#mac:INCLUDEPATH += /Library/Frameworks/qwt.framework/Headers
#mac: INCLUDEPATH += /usr/local/qwt-6.1.0/src
mac: INCLUDEPATH += /usr/local.qwt-6.1.0/lib/qwt.framework/Headers
linux-g++:INCLUDEPATH += /usr/local/qwt-5.2.1/include
win32:INCLUDEPATH += C:/Qwt-5.2.1/include
FORMS += ui/
UI_HEADERS_DIR = inc_ui
OBJECTS_DIR = obj
MOC_DIR = moc
#mac:LIBS += /usr/local/qwt-6.1.0/lib -framework qwt
#mac:LIBS += -l /usr/local/qwt-6.1.0/lib/qwt.framework
mac:LIBS += -F /usr/local/qwt-6.1.0/lib -framework qwt
linux-g++:LIBS += /usr/local/qwt-5.2.1/lib/libqwt.so
win32:LIBS += C:/Qwt-5.2.1/lib/qwt5.dll
Any help is appreciated,
Thanks.

Neocomplete and Eclim don't work together

with the default set up, there nothing shows about the auto completion,either no autocomplete shows up nor <C-X><C-U> key, the later shows "pattern not found", Is there anyone can tell me how to make it working?
here my vimrc file:
set nocompatible
syntax on
set laststatus=2
set encoding=utf-8
set guifont=Anonymous\ Pro\ for\ Powerline:h13
let g:Powerline_symbols = 'fancy'
if has("gui_running")
set guioptions=egmrt
set transparency=10
set guifont=menlo:h14
endif
imap jj <Esc>
set autoindent
set tabstop=4
set shiftwidth=4
filetype off " required!
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
" let Vundle manage Vundle
" required!
Bundle 'gmarik/vundle'
" My Bundles here:
" original repos on github
Bundle 'scrooloose/nerdtree'
Bundle 'majutsushi/tagbar'
Bundle 'tpope/vim-rails'
Bundle 'Shougo/neocomplcache'
Bundle 'nanotech/jellybeans.vim'
Bundle 'Rip-Rip/clang_complete'
Bundle 'osyo-manga/neocomplcache-clang_complete'
colorscheme jellybeans
Bundle 'godlygeek/tabular'
Bundle 'Lokaltog/vim-powerline'
Bundle 'tpope/vim-haml'
Bundle 'nathanaelkane/vim-indent-guides'
Bundle 'vim-ruby/vim-ruby'
Bundle 'kchmck/vim-coffee-script'
" vim-scripts repos
Bundle 'DrawIt'
Bundle 'tComment'
Bundle 'sudo.vim'
Bundle 'Align'
" non github repos
"Bundle 'git://git.wincent.com/command-t.git'
filetype plugin indent on " required!
nmap 88 :TagbarToggle<CR>
nmap 99 :NERDTreeToggle<CR>
" use neocomplcache & clang_complete
" add neocomplcache option
let g:neocomplcache_force_overwrite_completefunc=1
" add clang_complete option
let g:clang_complete_auto=1
" Disable AutoComplPop.
let g:acp_enableAtStartup = 0
" Use neocomplcache.
let g:neocomplcache_enable_at_startup = 1
" Use smartcase.
let g:neocomplcache_enable_smart_case = 1
" Use camel case completion.
let g:neocomplcache_enable_camel_case_completion = 1
" Use underbar completion.
let g:neocomplcache_enable_underbar_completion = 1
" Set minimum syntax keyword length.
let g:neocomplcache_min_syntax_length = 3
let g:neocomplcache_lock_buffer_name_pattern = '\*ku\*'
" Define dictionary.
let g:neocomplcache_dictionary_filetype_lists = {
\ 'default' : '',
\ 'vimshell' : $HOME.'/.vimshell_hist',
\ 'scheme' : $HOME.'/.gosh_completions'
\ }
" Define keyword.
if !exists('g:neocomplcache_keyword_patterns')
let g:neocomplcache_keyword_patterns = {}
endif
let g:neocomplcache_keyword_patterns['default'] = '\h\w*'
" Plugin key-mappings.
imap <C-k> <Plug>(neocomplcache_snippets_expand)
smap <C-k> <Plug>(neocomplcache_snippets_expand)
inoremap <expr><C-g> neocomplcache#undo_completion()
inoremap <expr><C-l> neocomplcache#complete_common_string()
" SuperTab like snippets behavior.
"imap <expr><TAB> neocomplcache#sources#snippets_complete#expandable() ? "\<Plug>(neocomplcache_snippets_expand)" : pumvisible() ? "\<C-n>" : "\<TAB>"
" Recommended key-mappings.
" <CR>: close popup and save indent.
inoremap <expr><CR> neocomplcache#smart_close_popup() . "\<CR>"
" <TAB>: completion.
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
" <C-h>, <BS>: close popup and delete backword char.
inoremap <expr><C-h> neocomplcache#smart_close_popup()."\<C-h>"
inoremap <expr><BS> neocomplcache#smart_close_popup()."\<C-h>"
inoremap <expr><C-y> neocomplcache#close_popup()
inoremap <expr><C-e> neocomplcache#cancel_popup()
" AutoComplPop like behavior.
"let g:neocomplcache_enable_auto_select = 1
" Shell like behavior(not recommended).
"set completeopt+=longest
"let g:neocomplcache_enable_auto_select = 1
"let g:neocomplcache_disable_auto_complete = 1
"inoremap <expr><TAB> pumvisible() ? "\<Down>" : "\<TAB>"
"inoremap <expr><CR> neocomplcache#smart_close_popup() . "\<CR>"
" Enable omni completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
" Enable heavy omni completion.
if !exists('g:neocomplcache_omni_patterns')
let g:neocomplcache_omni_patterns = {}
endif
let g:neocomplcache_omni_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::'
"autocmd FileType ruby setlocal omnifunc=rubycomplete#Complete
let g:neocomplcache_omni_patterns.php = '[^. \t]->\h\w*\|\h\w*::'
Put this in your vimrc
let g:EclimCompletionMethod = 'omnifunc'
Check out http://eclim.org/vim/code_completion.html for more information.

Custom rubble in Aptana not activated automatically

I am new to Aptana, so I could be missing something obvious. My problem in that bundle I created does not get activated when Aptana is loaded. I have to update date of the rubble.rb file for it to work.
touch ~/Documents/Aptana Rubles/ioncubeEncode.ruble
After I do that, for the rest of that Aptana session things are peachy.
I do not think it is relevant, but here is bundle code, which works just fine (when it works):
require 'ruble'
#Ruble::Logger.log_level = :trace
bundle do |bundle|
bundle.author = "Sasha"
bundle.copyright = "None"
bundle.display_name = "Ioncube Encode"
bundle.description = "Encode just saved php file form base_local to base folder"
end
command "Ioncube Encode" do |cmd|
cmd.input = :document
cmd.output = :output_to_console
cmd.trigger = :execution_listener , "org.eclipse.ui.file.save"
cmd.invoke do |ctx|
source_path = ENV['TM_FILEPATH']
ext = File.extname(source_path)
if ext == '.php'
if ( source_path =~ /base_local/)
destination_path = source_path.sub('/base_local/','/base/')
#CONSOLE.puts "Ioncube Encoding: " + source_path + " to " + destination_path
exec="/usr/local/ioncube/ioncube_encoder5 -v --optimize more --without-loader-check " + source_path + " -o " +destination_path + " 2>&1"
IO.popen(exec, 'r+') do |io|
io.close_write
CONSOLE.puts io.read
end
end
end
end
end
This might not seem like a big deal but it bothers me - a lot.

Resources